我试图从模态更新数据,以便我想要传递ID到我的表单路由我该怎么办
$("body").on("click",".edit-item",function(){
var id = $(this).parent("td").data('id');
console.log(id);
var description = $(this).parent("td").prev("td").prev("td").text();
var log_time = $(this).parent("td").prev("td").text();
var url = '{{url('calls/'.$call->id.'/sub_calls/'.$subCall->id.'logs')}}}'
$("#edit-item").find("input[name='description']").val(description);
$("#edit-item").find("textarea[name='log_time']").val(log_time);
$("#edit-item").find("form").attr("action",url + '/' + id);
});
我希望将 var id 传递给 $ subcall-> id
旁边的模态路线{!! Form::model(['route' => ['calls.sub_calls.logs.update',$call->id,$subCall->id],'class'=>'form-horizontal','role'=>'form']) !!}
我的路线
Route::model('logs','App\Models\SubCalls\SubPortLog');
Route::resource('calls.sub_calls.logs','SubPortLogController');
答案 0 :(得分:0)
你需要在路由文件中传递它(它是你定义的路由),如下所示:
Route::post('calls/sub_calls/logs/{id}/update/{subId?}', ['uses' => 'SomeController@upddate']);
如果您使用Route::resource
方法修改了这条路线,那么您应该将此示例放在此声明的前面,如下所示:
Route::post('calls/sub_calls/logs/{id}/update/{subId?}', ['uses' => 'SomeController@upddate']);
Route::resource('calls/sub_calls/logs','SubPortLogController');
然后在你的控制器中metyhod这样做:
public function update($id, $subId = null)
<强>更新强>
试试这个:
使用短代码定义表单作为secound参数,即:subId
:
{!! Form::model(['route' => ['calls.sub_calls.logs.update',$call->id, ':subCallId'],'class'=>'form-horizontal','role'=>'form']) !!}
然后只需将其替换为您想要的值:
$("body").on("click",".edit-item",function() {
var id = $(this).parent("td").data('id'),
action = $('form').prop('action').replace();
$('form').prop('action', action);
(...)
}