Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Laravel 5.6在未提交的模型中从表单更新记录_Javascript_Php_Laravel_Laravel 5 - Fatal编程技术网

Javascript Laravel 5.6在未提交的模型中从表单更新记录

Javascript Laravel 5.6在未提交的模型中从表单更新记录,javascript,php,laravel,laravel-5,Javascript,Php,Laravel,Laravel 5,我有一个简单的crud系统,除了更新部分,我构建的所有东西都可以正常工作 当您试图编辑一条记录时,会弹出一个引导模式,其中包含一个表单,其中记录是用javascript填充的。表单的操作url也由javascript设置。当我提交时,模型简单地关闭,什么也没有发生 让我们从我的资源路线开始: Route::resource('buildingimage', 'BuildingImageController'); “编辑”按钮: <button class="edit-modal

我有一个简单的crud系统,除了更新部分,我构建的所有东西都可以正常工作

当您试图编辑一条记录时,会弹出一个引导模式,其中包含一个表单,其中记录是用javascript填充的。表单的操作url也由javascript设置。当我提交时,模型简单地关闭,什么也没有发生

让我们从我的资源路线开始:

Route::resource('buildingimage', 'BuildingImageController');
“编辑”按钮:

<button
    class="edit-modal btn btn-info"
    data-buildingid="{{$building->id}}"
    data-location="{{$building->location}}"
    data-source="{{$building->source}}"
    data-disc="{{$building->disc}}"
    data-result="{{$building->result}}"
    data-resultPositive="{{$building->result_info_positive}}"
    data-resultNegative="{{$building->result_info_negative}}"
    data-toggle="modal"
    data-target="#edit-building"
>
    <i class="far fa-edit"></i>
    Edit
</button>
“我的模态”中的形式:

{{ Form::open(['id' => 'editBuilding', 'method' => 'PUT']) }}
            <div class="form-group">
                <div class="row">
                    <div class="col-md-3 ">
                        {{ Form::label('location', Lang::get('image_request.execute.building.location')) }}
                        {{ Form::text('location', null, array('class' => 'form-control')) }}
                    </div>
                    <div class="col-md-2 noPaddingLeft">
                        {{ Form::label('source', Lang::get('image_request.execute.building.source')) }}

                    </div>
                    <div class="col-md-2 noPaddingLeft">
                        {{ Form::label('disc', Lang::get('image_request.execute.building.disc')) }}
                        {{ Form::select('disc', ['0' => Lang::get('image_request.execute.building.notdisc'), '1' => Lang::get('image_request.execute.building.disc')], null, ['id' => 'discDropdown', 'class' => 'form-control'])}}
                    </div>
                    <div class="col-md-2 noPaddingLeft">
                        {{ Form::label('result', Lang::get('image_request.execute.building.result')) }}
                        {{ Form::select('result', ['positive' => Lang::get('image_request.execute.building.positive'), 'negative' => Lang::get('image_request.execute.building.negative')], null, ['id' => 'resultDropdown', 'class' => 'form-control'])}}
                    </div>
                    <div class="col-md-2 noPaddingLeft">
                        <div id="resultPositive">
                            {{ Form::label('resultpostitive', Lang::get('image_request.execute.building.resultpositive')) }}
                            {{ Form::select('result_info_positive', ['positive' => Lang::get('image_request.execute.building.positive'), 'negative' => Lang::get('image_request.execute.building.negative')], null, ['id' => 'resultPositiveDropdown', 'class' => 'form-control'])}}
                        </div>
                        <div id="resultNegative">
                            {{ Form::label('resultnegative', Lang::get('image_request.execute.building.resultnegative')) }}
                            {{ Form::select('result_info_negative', ['positive' => Lang::get('image_request.execute.building.positive'), 'negative' => Lang::get('image_request.execute.building.negative')], null, ['id' => 'resultNegativeDropdown', 'class' => 'form-control'])}}
                        </div>
                    </div>
                    <div class="col-md-1 noPaddingLeft">
                        <br>
                        {!! Form::hidden('image_request_id', $imageRequest->id) !!}
                    </div>
                </div>
            </div>
{{ Form::close() }}
{{Form::open(['id'=>'editBuilding','method'=>'PUT'])}
{{Form::label('location',Lang::get('image_request.execute.building.location'))}
{{Form::text('location',null,array('class'=>'Form control'))}
{{Form::label('source',Lang::get('image_request.execute.building.source'))}
{{Form::label('disc',Lang::get('image_request.execute.building.disc'))}
{Form::select('disc',['0'=>Lang::get('image\u request.execute.building.notdisc'),'1'=>Lang::get('image\u request.execute.building.disc')),null,['id'=>discDropdown','class'=>Form control'])}
{{Form::label('result',Lang::get('image_request.execute.building.result'))}
{Form::select('result',['positive'=>Lang::get('image\u request.execute.building.positive'),'negative'=>Lang::get('image\u request.execute.building.negative')),null,['id'=>resultDropdown',class'=>Form control'])}
{{Form::label('resultpostive',Lang::get('image_request.execute.building.resultpositive'))}
{Form::select('result\u info\u positive',['positive'=>Lang::get('image\u request.execute.building.positive'),'negative'=>Lang::get('image\u request.execute.building.negative')),null,['id'=>'resultPositiveDropdown','class'=>'Form control]}
{{Form::label('resultnegative',Lang::get('image_request.execute.building.resultnegative'))}
{Form::select('result\u info\u negative',['positive'=>Lang::get('image\u request.execute.building.positive'),'negative'=>Lang::get('image\u request.execute.building.negative')),null,['id'=>resultNegativeDropdown','class'=>Form control]}

{!!Form::hidden('image\u request\u id',$imageRequest->id) {{Form::close()}}
现在我不知道为什么表单没有提交,实际上什么都没有发生,模态只是关闭

在模式中编辑提交按钮 我忘了在模式中显示我是如何提交表格的:

<button type="submit" form="editBuilding" class="btn btn-primary edit" data-dismiss="modal">
    <span class='glyphicon glyphicon-check'></span> @lang('image_request.execute.building.edit_modal.confirm')
</button>

@lang('image\u request.execute.building.edit\u modal.confirm')

将表单上的方法类型更改为
POST
,然后将

@method('PUT')
在你的表格内

原因是什么

在JS中,还需要防止模态的默认行为。要做到这一点,您可以将其作为脚本的第一行

e.preventDefault();
返回false在末尾

然后在脚本的底部,修改表单后,您需要提交表单

$('#editBuilding').submit();

我实际上已经尝试过将此作为我的初始代码,但它是相同的,没有发生任何情况模式只是关闭我在表单中没有看到您的路线<代码>表单::open(['route'=>['buildingimage.update'],'id'=>'editBuilding','method'=>'PUT'])
我不能这样给我的路线,因为我需要给它一个id,我通过javascript设置了动作/路线属性,看看我在OPah中发布的javascript,这是误导性的,当它是
edit
时,你称它为
deleteUrl
,这让我很困惑。是的,你说得对,这是一个非常糟糕的名字lol,我会编辑OP和我的代码
$('#editBuilding').submit();