【发布时间】:2022-01-20 05:12:20
【问题描述】:
我已经从 laravel 控制器提交了 json 响应,但是当它给出错误时,JQuery 部分工作正常,但是当请求成功时,JQuery 给出错误,即解析错误,我无法读取数据内容,但它显示了数据在日志控制台中正确。
JQuery Ajax 代码:
event.preventDefault();
url = $('a#sendpropertiesdata').attr('href');
data = new FormData($('#propertiescreateform')[0]);
$.ajax({
url: url,
type: "POST",
data: data,
processData: false,
dataType: 'json',
contentType: false,
beforeSend: function () {},
success: function (data) {
// alert(data.msg);
response = data
alert(response['code']);
if (data.code == 0) {
$('span#error_message').text(data.error).css('color', 'red');
} else if (data.code == 1) {
$('span#error_message').text(data.msg).css('color', 'green');
window.setTimeout(function () {
$('form#propertiescreateform').remove();
}, 3000);
}
},
complete: function (data, status) {
alert(data.code + " " + status);
if (data.code == 1) {
$('span#error_message').text(data.msg).css('color', 'green');
window.setTimeout(function () {
$('form#propertiescreateform').remove();
}, 3000);
}
}
});
控制器代码:
$validator = \Validator::make($request->all(), $rules);
if ($validator->passes())
{
$property = new Properties();
$property->country = $request->country ;
$property->city = $request-> housecity ;
$property->location = $request->houseaddress ;
$property->description = $request->propertiesdescription ;
$property->price = $request->price;
$property->save();
return response()->json(['code' => 1, 'msg' => 'data saved successfully']);
}
else
{
return response()->json(['code' => 0, 'error' => $validator->errors()->all()]);
}
【问题讨论】:
-
这一行之后:return response() -> json(['code' => 1, 'msg' => '数据保存成功']);有一个不应该存在的结束 }(} else { 与 $validator->passes if 子句有关。
标签: jquery ajax laravel laravel-5