1

我实际上刚刚开始使用 Ajax 进行编程,但无法让它工作。

这是我到目前为止所拥有的:

var oldAction = '';

function updateCheck() {
  $.ajax({
    url: 'check_status.php',
    success: function (data) {
      if (data.length != oldAction) {
        if (data.length == '4') {
          playSong();
        } else {
          pauseSong();
        }
      }

      oldAction = data.length;
    }
  });
}

setInterval('updateCheck();', 1000);

有谁知道为什么这不起作用?

谢谢

4

2 回答 2

2

当然。 length()正在寻找一个整数,但您正在将它与一个字符串进行比较。

如果oldAction真的需要是一个字符串,那么你需要做这样的事情:

if (data.length != Number(oldAction)) {
  if (data.length == 4) {
    playSong();
  } else {
    pauseSong();
  }
};
于 2012-09-01T23:46:36.917 回答
1

试试这个:

function updateCheck() {
  var
    oldAction = 0,
    callAjax = function () {
      $.ajax({
        url: 'check_status.php',
        success: function (data) {
          if (data.length != oldAction) {
            (data.length == 4) ? playSong() : pauseSong();
          }

          oldAction = data.length;
        }
      });
    };

  setInterval(callAjax, 1000);
}

updateCheck();

​
于 2012-09-01T23:55:21.833 回答