外部の PHP ページから取得したデータを毎秒更新したいと考えています。PHP は、AJAX 呼び出しで取得した JSON データを送信します。このコードではテーブルが正しく表示されますが、新しいデータを表示するにはブラウザーを更新する必要があります。
$(document).ready(function() {
$("#list").jqGrid({
url: 'get_data.php',
datatype: 'json',
mtype: 'GET',
jsonReader: {
repeatitems : false,
},
colNames: [.............],
colModel: [.............],
autowidth: true,
height: 'auto',
loadonce: true,
key: true,
altRows: true,
altclass: 'odd',
rowNum: 100,
viewrecords: true,
gridview: true,
gridComplete: function(){
if(this.x == undefined){
var j = 0;
this.x = 1;
while(j < mydata2.length){
jQuery("#list").addRowData(mydata2[j].id, mydata2[j]);
j++;
}
}
return true;
}
})
});
私はすでにこれを試したデータを更新するには:
var $grid = $("#list"), timer;
timer = setInterval(function () {
$grid.trigger('reloadGrid', [{current: true, datatype: 'json', url: 'get_data.php'}]);
}, 1000);
この:
var refreshId = setInterval(function() {
// ... jqGrid function ...
}, 1000);
しかし、どちらも機能しませんでした。