Javascript $.ajax错误函数仅在重新启动节点服务器时调用
我有一个注册表单,如果缺少字段,它会从服务器端接收错误,例如HTTP代码400(错误请求) 可能不需要,但代码如下: HTML 对于服务器端,如果输入的信息没有问题,表单就会成功,否则可以返回如下内容: $.ajax中的error函数未检测到该HTTP错误。但是,当我重新启动节点服务器时,会检测到错误并运行Javascript $.ajax错误函数仅在重新启动节点服务器时调用,javascript,node.js,Javascript,Node.js,我有一个注册表单,如果缺少字段,它会从服务器端接收错误,例如HTTP代码400(错误请求) 可能不需要,但代码如下: HTML 对于服务器端,如果输入的信息没有问题,表单就会成功,否则可以返回如下内容: $.ajax中的error函数未检测到该HTTP错误。但是,当我重新启动节点服务器时,会检测到错误并运行console.log(response)等 有什么想法吗?试试使用 $.ajax({ ... data: JSON.stringify(fieldValues), .
console.log(response)
等
有什么想法吗?试试使用
$.ajax({
...
data: JSON.stringify(fieldValues),
...
你的服务器端代码是什么?你会结束你的回答吗?特别是错误处理部分。
$('#signup_form').submit(function (event) {
$('#signup_processing_message').show();
event.preventDefault();
var fieldValues = getFormObj('signup_form');
$.ajax({
type: 'post',
url: '/signup/local',
data: fieldValues,
success: function (response, textStatus, xhr) {
if (xhr.readyState === 4 && xhr.status === 0) {
alert('Aborted. Network issue.');
} else if (response.message === 'success') {
if ($('#signup_error_message').is(':visible')) {
$('#signup_error_message').hide();
}
$('#signup_processing_message').html('Success');
setTimeout(function (){ window.location.href = '/'; }, 500);
} else {
// Could this ever happen?
}
},
error: function (response) {
console.log(response);
if ($('#signup_processing_message').is(':visible')) {
$('#signup_processing_message').hide();
}
if (response.status === 400) {
$('#signup_error_message').html('Please fill in the fields correctly.');
} else {
$('#signup_error_message').html('Please fill in the fields correctly.');
}
$('#signup_error_message').show();
}
});
});
// For forms - signup, login etc. Returns an obj with the name and value of each field in the form.
function getFormObj(formId) {
var formObj = {};
var inputs = $('#' + formId).serializeArray();
$.each(inputs, function (i, input) {
formObj[input.name] = input.value;
});
return formObj;
};
$.ajax({
...
data: JSON.stringify(fieldValues),
...