我希望使用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">
似乎很好......
答案 0 :(得分:3)
您希望将number
作为参数传递给load
,而不是字符串。
$('#stocks').load('/stock.php?symbol=' + number);
此外,我假设您想要在成功回调中更新您的计数器:
$('#stocks').load('/stock.php?symbol=' + number, function () {
counter++;
if (counter == <? php echo $count1; ?> ) {
counter = 0;
}
});
答案 1 :(得分: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(将计数器作为参数传递)然后执行回调函数 - 它会递增计数并检查它是否等于{{1}中的任何内容}。
答案 2 :(得分:0)
我认为你的意思是setInterval
,你写的是timeInterval
。
你可能想要
$('#stocks').load('/stock.php?symbol=' + number);
此文件是否由php解析?因为<? php echo $count1; ?>
如果它的.js可能不是。
答案 3 :(得分:-1)
您的语法错误“;”错过了:
$('#stocks').load('/stock.php?symbol=number')
jQuery默认情况下不显示错误,所以似乎没有任何反应。