【发布时间】:2012-11-13 02:41:05
【问题描述】:
下面是脚本:
$(document).ready(function () {
$.getJSON('table.json', function (data) {
$('#mytable').empty();
var html = '';
html += '<tr class="tableheader"><th>Name</th><th>Code</th><th>Value</th><th>Bid</th><th>Offer</th></tr>';
for (var i = 0, size = data.length; i < size; i++) {
html += '<tr class="tablecontent"><td>' + data[i].name + '</td><td>' + data[i].code + '</td><td>' + data[i].value + '</td><td>' + data[i].bid + '</td><td>' + data[i].offer + '</td></tr>';
}
$('#mytable').append(html);
tablerows('mytable');
setTimeout(poll, 5000);
});
});
var poll = function () {
alert("poll");
$.getJSON('dummy.json', function (data) {
setTimeout(poll, 5000);
});
}
我想更新我的数据。 poll 函数每 5 秒调用一次,我通过 alert 进行了检查。但是数据没有得到更新。请告诉我我做错了什么。
【问题讨论】:
-
内联 HTML 创建不好 - 查看微模板。轮询也很糟糕,请查看 comet / websockets。
-
帮自己一个忙,不要使用
alert()进行验证。找到浏览器的开发者控制台,并使用console.log()或其他console工具。然后你可以console.log(data),你就能看到问题所在了。 -
在投票功能中你没有改变任何东西,你怎么知道数据没有更新?
-
您似乎没有多次调用该函数来更新您的数据。您第一次调用
table.json并更新您的表,然后在后续实例中调用dummy.json并且不对返回的数据执行任何操作。 -
@nuclearGhost.. 我无法理解。首先调用 table.json 正在返回我的数据。下次我打电话给 dummy.json。之后我该怎么办?
标签: javascript jquery json