jQuery / JSON处理XHR响应

时间:2018-11-28 03:14:45

标签: javascript jquery json xmlhttprequest

我正在使用以下代码发布一些JSON信息。当前,如果成功(200响应),则会弹出警报,但是如果失败,则什么也不会发生。

我想做的基本上是说如果成功则执行X,否则执行Y。

我尝试在函数中使用if / else语句,但是似乎不起作用。

很抱歉,这是一个愚蠢的问题,我是JSON,XHR等人员的新手。将不胜感激。

jQuery["postJSON"] = function(url, data, callback) {
  if (jQuery.isFunction(data)) {
    callback = data;
    data = undefined;
  }
  return jQuery.ajax({
    url: url,
    type: "POST",
    crossDomain: true,
    contentType: "application/json",
    data: JSON.stringify(data),
    success: callback
  });
};

$.postJSON(
  "https://test.com",
  data,
  function(data, status, xhr) {
    alert("Success");
  }
);

编辑:工作代码:

jQuery["postJSON"] = function(url, data, callback) {
  if (jQuery.isFunction(data)) {
    callback = data;
    data = undefined;
  }
  return jQuery.ajax({
    url: url,
    type: "POST",
    crossDomain: true,
    contentType: "application/json",
    data: JSON.stringify(data),
    success: callback,
    error: function(xhr, ajaxOptions, thrownError){
    alert(thrownError);
  });
};

$.postJSON(
  "https://test.com",
  data,
  function(data, status, xhr) {
    alert("Success");
  }
);

1 个答案:

答案 0 :(得分:1)

将此行添加到您的..\packages函数中:

<div id="memtab">
    <table>
        <tr class="head">
            <td>Head 1</td>
            <td>Head 2</td>
            <td>Head 3</td>
            <td>Head 4</td>
            <td>Head 5</td>
        </tr>
        <tr>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
        </tr>
        <tr>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
        </tr>
        <tr>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
            <td>Display</td>
        </tr>
        <tr>
            <td>Hide</td>
            <td>Hide</td>
            <td>Hide</td>
            <td>Display</td>
            <td>Display</td>
        </tr>
    </table>
</div>

希望这会有所帮助〜