当我使用JQuery提交我的模态表单时。我使用serialize()
方法接收表单数据,然后使用AJAX将其发送到我的控制器方法。但在我的控制器中,我希望从这些数据中访问单个值,但我无法取消序列化此数据。我怎样才能做到这一点 ??
这是我的JQuery Part。
$('#btnSave').on('click',function(){
var data = $('#form').serialize();
$.ajax({
url:"{{route('product.update')}}",
method:'post',
data:{data:data,'_token':"{{csrf_token()}}"},
success:function(data)
{
console.log(data);
}
});
这是我的控制器方法。
public function update(Request $request)
{
$data=$request->all();
$title=$data['title']
return $title;
}
这是我的输出。
对象{data:“product_id = 1&title = Prof.&description = Amet%20rem%20autem%20doloremque%20expedita%20consequatur%20quos。%20Dolore%20veritatis%20in%20expedita%20consequatur%20porro。%20Quaerat%20voluptate%20et%20non%20quia 。%20Possimus%20recusandae%20voluptates%20sequi。&price = 93040“,_ token:”trqOM0WJDUY8rf00K75S1O6AAOn84r6aG3hQ1Jhp“}
你正在嵌套你的参数,试试这个
$('#btnSave').on('click',function(){
var data = $('#form').serialize();
$.ajax({
url:"{{route('product.update')}}",
method:'post',
data:data+'&_token={{csrf_token()}}',
success:function(data)
{
console.log(data);
}
});
});
$ request是一个对象而不是一个数组
JS
success:function(msg){
console.log(msg);
}
只是为了确保它没有尝试传递发送到控制器的数据var
调节器
public function update(Request $request)
{
$title=$request->title;
return $title;
}