使用jQuery我想根据返回的数据HTTP状态代码创建自定义消息。我根据返回的状态代码创建了一个显示唯一消息的条件,但是我收到以下错误消息:
未捕获的ReferenceError:未定义数据:
我的jQuery脚本是:
jQuery(document).ready(function($) {
$('#submitButton').click( function(e) {
e.preventDefault();
$.ajax({
url: 'myUrl',
type: 'post',
dataType: 'json',
data: $('form#Form').serialize(),
success: function(data) {
if (data.code == '201') {
alert('New Resource Created');
}
if (data.code == '1000') {
alert('Successful message');
}
},
error: function(xhr, status, error){
if (data.code == '400') {
alert('Bad Request!');
}
if (data.code == '2004') {
alert('System error message!');
}
}
// Prevent default form action
});
});
});
我收到的JSON代码使用以下格式:
{
"status": "400",
"code": "2003",
"message": "Invalid address copy"
}
以下是状态代码的示例:
201 – OK
2004 - System error message!
400 - Invalid address copy
我的HTML表单在这里:
<form id="Form">
<input type="text" id="name" name="name" placeholder="First Name">
<input type="text" id="address1" placeholder="Address 1" name="address1">
<button type="submit" id="submitButton">Submit</button>
</form>
不确定我在此错过了什么,或者为什么我收到错误但欢迎任何帮助。
答案 0 :(得分:1)
正如我之前在评论中提到的那样,试试:
jQuery(document).ready(function($) {
$('#submitButton').click( function(e) {
e.preventDefault();
$.ajax({
url: 'myUrl',
type: 'post',
dataType: 'json',
data: $('form#Form').serialize(),
success: function(data) {
if (data.code == '201') {
alert('New Resource Created');
}
if (data.code == '1000') {
alert('Successful message');
}
},
error: function(xhr, status, error){
if (xhr.code == '400') {
alert('Bad Request!');
}
if (xhr.code == '2004') {
alert('System error message!');
}
}
// Prevent default form action
});
});
});