我现在处于设计阶段,想知道如何每隔5秒更新一次表格。
我的表格将显示从我的模型返回的只读数据。
通常我的视图只有<table></table>
HTML,然后是foreach循环来写出数据。
但是因为我想每5秒刷新一次这个表,所以我不确定如何实现它。
我知道有javascript setinterval函数,但我也不确定该做什么。它会是这样的吗?
例如/
function getdata()
{
$.getJSON("/mycontroller/mymethod"),
function(data) {
$.each(data, function(i, item) {
var row = { item.ID, item.Date,
item.Title
};
$(#table).tableInsertRows(row);
});
});
}
setInterval( "getdata", 5000 );
答案 0 :(得分:1)
让mymethod
操作呈现视图而不是返回JSON可能是最简单的。然后你可以将div的innerHTML
设置为ajax响应。
否则您的方法将起作用,但您显然必须先删除现有的表行:
$('#table').tableRemoveRows({from:0, length:???});
修改强>
重新阅读您的问题,听起来您要求的更多关于setInterval
而不是实际创建表格。你需要不断重新注册回调,所以像这样:
function getdata()
{
$.getJSON("/mycontroller/mymethod"), function(data) {
$.each(data, function(i, item) {
var row = { item.ID, item.Date,
item.Title
};
$(#table).tableInsertRows(row);
});
setInterval( getdata, 5000 );
});
}
setInterval( getdata, 5000 );