我正在尝试使用Ajax发送表单数据,但是出现了错误,并且只有“error”回调函数被执行。
以下是我的尝试:
$("#issue_submit").click(function (e) {
console.log("clicked on the issue submit");
e.preventDefault();
// Validate the form
var procurementForm = $("#it_procuremet_form");
if($(procurementForm).valid()===false){
return false;
}
// Show ajax loader
appendData();
var formData = $(procurementForm).serialize();
// Send request to save the records through ajax
var formRequest = $.ajax({
url: app.baseurl("itprocurement/save"),
data: formData,
type: "POST",
dataType: "json"
});
formRequest.done(function (res) {
console.log(res);
});
formRequest.error(function (res, err) {
console.log(res);
});
formRequest.always(function () {
$("#overlay-procurement").remove();
// do somethings that always needs to occur regardless of error or success
});
});
路由定义如下:
$f3->route('POST /itprocurement/save', 'GBD\Internals\Controllers\ITProcurementController->save');
同时我添加了:
$f3->route('POST /itprocurement/save [ajax]', 'GBD\Internals\Controllers\ITProcurementController->save');
我尝试在控制器类ITProcurementController.php
中向ajax调用返回一个简单的字符串。
public function save($f3)
{
echo 'Problem!';
return;
$post = $f3->get('POST');
}
但只有“error”回调函数被执行。我无法确定问题出在哪里,请帮忙。