【问题标题】:Uncaught TypeError: Cannot read property 'split' of undefined in jquery call back function未捕获的类型错误:无法读取 jquery 回调函数中未定义的属性“拆分”
【发布时间】:2016-05-01 12:20:58
【问题描述】:

$.post() 回调有很大的麻烦。该函数返回一些值,但是当我查找它的类型 (back.type) 时,它返回“已定义”并且我的错误循环每秒都在增加,这会导致问题。

function upMessage() {
  var id = $(".id").val();
  var data = "id=" + id;
  $.post("ajax/upMessage.php", {
    id: id
  }, function(back) {
    back = back.split(",");
    for (var i = 0; i <= (parseInt(back.length)) + 1; i++) {
      var backing = back[i];
      backing = backing.split("*");
      if (backing != "he," && backing != undefined && backing != "") {
        var id = backing[0];
        var oxu = backing[1];
        if (oxu == "he") {
          oxu = "<i class=\"fa fa-check\" style=\"color:#2B85DB;margin-right:-7px\"></i><i class=\"fa fa-check\" style=\"color:#2B85DB;\"></i>";
        } else {
          oxu = "<i class=\"fa fa-check\" style=\"margin-right:-7px\"></i><i class=\"fa fa-check\"></i>";
        }
        $("span#r" + id + ".i").html(oxu);
      }
    }
  });
}
setInterval(upMessage, 700);

我在页面中有错误循环。 例如。 http://masters.az 登录:leo 通过:12345

【问题讨论】:

  • backing = backing.split("*"); - 这将是一个数组,但您将其视为字符串。
  • 如何将其转换为字符串?
  • 1.在检查 if (backing != "he," && backing !=... 2. 避免在代码中更改类型。"backing" 是一个字符串然后它是一个数组。使用不同的变量。3.显示错误您收到的消息。
  • 呜呜呜谢谢你。它有效 :) 非常感谢 :) 我的大脑从昨天就停止了,我找不到解决方案。 :)

标签: javascript jquery undefined typeerror


【解决方案1】:
  1. 在你的检查后加上 split if (backing != "he," &amp;&amp; backing !=...
  2. 避免在代码中更改类型。 "backing" 是一个 string 然后它是 数组。使用不同的变量。
  3. 显示您收到的错误消息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-15
    相关资源
    最近更新 更多