Попытка отправить мою форму laravel без обновления страницы - PullRequest
0 голосов
/ 16 ноября 2018

Я пытаюсь отправить свою форму без обновления страницы.Я не был успешным, я продолжаю получать сообщение об ошибке в журнале консоли, что сервер говорит, что страница неправильная. Я не знаю, что я делаю неправильно.Может кто-то помочь мне, пожалуйста?Я использую Laravel, AJAX.Вот мой кодЗаранее спасибо

   //Ajax

$('.formform' ).submit(
    function( e ) {
        $.ajax( {
            url: '{{ url('profileupdate') }}',
            type: 'POST',
            data: new FormData( this ),
            processData: false,
            contentType: false,
            success: function(result){
                console.log(result);
            }
        } );
        e.preventDefault();
    } 
);


             //The form
    {!!Form::open(['url'=>['profileupdate',Auth::user()->id],'method'=>'POST','files'=>true,'class'=>'formform formform2','enctype' => 'multipart/form-data']) !!}

                    <div style="position:relative; left:.5em; font-size:1.3em;">
ADD YOUR VIDEO!<br>

                        </div>
                        <br>
                    {{Form::file('video',array('id'=>'file','class'=>'thefile'))}}

                    <label for="file"  class="btn btn-default" style="background:none;">Choose a file</label> <span class="tt"></span>








                    {{Form::text('Company','',array('placeholder'=>'Company Name','class'=>'form-control'))}}

{{Form::text('city','',array('placeholder'=>'City and State','class'=>'form-control', 'size'=>'35px','height'=>'15px','id'=>'location-input','autocomplete'=>'off'))}}

{{Form::text('zip_code','',array('placeholder'=>'Zip Code','class'=>'form-control'))}}

 {{Form::text('Phone_Number','',array('placeholder'=>'Phone Number','class'=>'form-control'))}}



{{Form::submit('Submit', array('class'=>'btn btn-warning form-control','id'=>'submitty profile1_submit','style'=>'border:none; margin-top:3%; margin-bottom:5%;', 'data-toggle'=>"modal",  'data-target'=>"#profile_modal"))}}
{!!Form::close() !!}

   //Here is the route

   Route::post('profileupdate/{id}','Profile1Controller@update');

Ответы [ 3 ]

0 голосов
/ 16 ноября 2018

Требуется обновление и токен, если это пост. Я также думаю, что вы называете маршрут неверным. Что я сделал со своим кодом здесь, так это то, что я вызываю функцию с идентификатором в качестве параметра и вызываю ее с помощью кнопки:

<button type="button" onclick = "submitThisForm({{Auth::user()->id}})"> Submit</button>

тогда функция скрипта содержит сообщение ajax. Я использую замену, чтобы добавить идентификатор в маршрут.

 function submitThisForm(id){
    url= '{{route('upload-employee-request',[":emp"])}}';
    url= url.replace(':emp', id);

}

потом наконец

function submitThisForm(id){
        url= '{{route('upload-employee-request',[":emp"])}}';
        url= url.replace(':emp', id);

        $.ajax( {
            url: url,
            type: 'POST',
            data: new FormData( this ),
            processData: false,
            contentType: false,
            success: function(result){
                console.log(result);
            }
        } );
        e.preventDefault();


    }

Надеюсь, это поможет!

0 голосов
/ 17 ноября 2018

Я заставил его работать благодаря Абдеррахиму Субай Элидрисси и Дирволвзу (спасибо, ребята)

Это то, что сработало для меня

 $.ajaxSetup({

        headers: {

            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')

        }

    });


$('.formform' ).submit(
    function( e ) {
        $.ajax( {
            url: '{!! url('profileupdate', ['id' => Auth::user()->id  ]) !!}',
            type: 'POST',
            data: new FormData( this ),
            processData: false,
            contentType: false,
            success: function(result){
                alert('form submitted');
            }
        } );
        e.preventDefault();
    } 
);
0 голосов
/ 16 ноября 2018

Вам не хватает параметра id 'profileupdate / {id}' Измените это:

url: '{{ url('profileupdate') }}',

с помощью

 url: {!! route('profileupdate', ['id' => Auth::user()->id  ]) !!}

и не забудьте добавить токен для csrfв данных (часть JavaScript)

    "_token": $('#token').val()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...