1

我正在寻找使用 jQuery.load().get()函数来替换 AJAX,我有这个:

var counter = 0;
timeInterval(changeStock(counter), 2000);

function changeStock(number) {
  $(document).ready(function () {
    $('#stocks').load('/stock.php?symbol=number')
    counter++;
    if (counter == <? php echo $count1; ?> ) {
      counter = 0;
    }
  }

但什么都没有发生。有任何想法吗??我<div id="stocks">的好像还好。。

4

4 回答 4

3

您想number作为参数传递给load,而不是字符串。

$('#stocks').load('/stock.php?symbol=' + number);

另外,我假设您想在成功回调中更新您的计数器:

$('#stocks').load('/stock.php?symbol=' + number, function () {
    counter++;

    if (counter == <? php echo $count1; ?> ) {
        counter = 0;
    }
});
于 2012-06-19T13:41:23.170 回答
2

您的脚本中有几行不正确:

timeInterval(changeStock(counter), 2000);

应该是setInterval()

$('#stocks').load('/stock.php?symbol=number')

应该$('#stocks').load('/stock.php?symbol='+number)

$(document).ready(function() {})在函数内 ?!?!?!

试试这个 :

$(document).ready(function () {
  var counter = 0;
  setInterval(function () {
    $('#stocks').load('/stock.php?symbol=' + counter, function () {
      counter++;
      if (counter == <? php echo $count1; ?> ) {
        counter = 0;
      }
    });
  }, 2000);
});

这将每 2000 毫秒执行一次内部函数——该函数将加载 url(将计数器作为参数传递),然后执行回调函数——它增加计数并检查它是否等于$count1.

于 2012-06-19T13:42:35.110 回答
0

我想你的意思是setInterval你写的地方timeInterval。你可能想拥有

$('#stocks').load('/stock.php?symbol=' + number);

这个文件也是由php解析的吗?因为<? php echo $count1; ?>如果它的 .js 可能不是。

于 2012-06-19T13:46:26.030 回答
-1

你有一个语法错误“;” 错过了:

    $('#stocks').load('/stock.php?symbol=number')

jQuery 默认情况下不显示错误,所以似乎什么也没发生。

于 2012-06-19T13:45:01.467 回答