javascript - 表单未提交 laravel

标签 javascript php jquery forms laravel-5

我正在 laravel 5.4.22 中构建一个基本表单,但它没有被提交,当我点击提交时,它停留在同一页面上,只是将 url 更改为不同的东西 我用过这条路线

    Route::post('/contact/submit', 'MessagesController@submit');

这是我使用的 Controller

   `<?php

      namespace App\Http\Controllers;

       use Illuminate\Http\Request;

       class MessagesController extends Controller
    {
        public function submit(Request $request){
         this->validate($request, [
              'name' => 'required',
              'email' =>'required'
               ]);
                 return 'SUCCESS';
                    }
                   }; ` 

这是我的联系方式

            @extends('layouts.app')

             @section('content')
            <H1>Contact</H1>
{!! Form::open(['action'=>'MessagesController@submit','method'=>'post']) !!}
          <div class="form-group">
            {{Form::label('name', 'Name')}}
            {{Form::text('name', '',  ['class' => 'awesome form-control', 'placeholder' => 'Enter name'] )}}
             </div>
          <div class="form-group">
            {{Form::label('email', 'E-Mail Address')}}
        {{Form::text('email', '',  ['class' => 'awesome form-control', 'placeholder' => 'Enter Email id'])}}
         </div>
        <div class="form-group">
          {{Form::label('messages', 'Message')}}
        {{Form::textarea('message', '', ['class' => 'form-control', 'placeholder' => 'Enter your message here'])}}
        </div>
         <div>
        {{Form::submit('Submit', ['class'=> 'btn btn-primary'])}}
         </div>
        {!! Form::close() !!}
      @endsection

,这是我连接其他东西的主页

      <!DOCTYPE html>
    <html>
    <head>
     <title>Dradz</title>
     <link rel="stylesheet" type="text/css" href="/css/app.css">
    </head>
    <body>

    @include('inc.navbar') 
    <div class="container">
      @if(Request::is('/'))
      @include('inc.showcase')
      @endif
      <div class="row">
        <div class="col-md-8 col-lg-8">
       @include('inc.messages')
      @yield('content')
   </div>
       <div class="col-md-4 col-lg-4">
            @include('inc.sidebar')
           @show
         </div>
    </div>
   </div>
 <footer id="footer" class="text-center">
        <p>Copyright 2017 &copy; Dradz</p>
       </footer>
      </body>
         </html>    

最佳答案

尝试在 url 的开头添加斜杠并将方法设置为“POST”

{!! Form::open(['url' => '/contact/submit', 'method'=>'POST']) !!}

此外,我建议您为所有路线命名,例如:

Route::post('/contact/submit', 'MessagesController@submit')->name('messages.submit');

然后你可以在你的表单中使用它:

{!! Form::open(['route' => 'messages.submit', 'method'=>'POST']) !!}

关于javascript - 表单未提交 laravel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46983527/

相关文章:

javascript - 无法使用 jQuery.ajax() 从 Yelp API 检索数据

javascript - 是否可以使用 JSLint 验证我的 jQuery JavaScript?

javascript - jqGrid 分页器在滚动分页中不可见

javascript - react native 博览会弹出后出现问题 : No visible @interface for 'RCTAsyncLocalStorage' declares the selector 'initWithStorageDirectory:'

javascript - jQuery XmlHttpRequest 缓存控制被忽略

php - 在 PHP (PDO) 中了解 MySQL 的内存使用情况

JavaScript - 创建一个未排序的数组,其中包含重复元素和唯一元素的总和

javascript - 对话框小部件。当我按回车键时,如何以编程方式调用 ok 方法

php - 如何安装 bcmath 模块?

php - 查询失败 : connection to localhost:3306 failed in sphinx