Javascript 如何使用JQuery AJAX基于HTTP状态代码创建自定义消息?

Javascript 如何使用JQuery AJAX基于HTTP状态代码创建自定义消息?,javascript,jquery,ajax,Javascript,Jquery,Ajax,使用jQuery,我想根据返回的数据HTTP状态代码创建一个自定义消息。我根据返回的状态代码创建了一个显示唯一消息的条件,但收到以下错误消息: 未捕获引用错误:未定义数据: 我的jQuery脚本是: jQuery(document).ready(function($) { $('#submitButton').click( function(e) { e.preventDefault(); $.ajax({

使用jQuery,我想根据返回的数据HTTP状态代码创建一个自定义消息。我根据返回的状态代码创建了一个显示唯一消息的条件,但收到以下错误消息:

未捕获引用错误:未定义数据:

我的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>

提交

不确定我在这方面遗漏了什么,也不知道为什么会出错,但欢迎提供任何帮助。

正如我在之前的评论中提到的,请尝试:

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


      });
  });
});

if(data.code==
应该是
if(status==
您可以使用xhr作为参数获取状态代码,并通常在成功函数中检查xhr.status。您之所以会收到此错误,是因为当它进入
错误:
,数据未定义!请尝试使用
status
变量或使用
xhr
变量……我会尝试一下。谢谢!