データをフェッチするためにバックエンドに定期的にAJAX呼び出しを行うJSコードがあります。
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.min.js"></script>
<script>
$(document).ready(function() {
var oTable = $('#example').dataTable({"bDestroy" : true, "bUseRendered": false, "bSort" : false, "bPaginate" : true, "bDeferRender": true});
(function worker() {
$.ajax( {
"dataType": 'json',
"type": "GET",
"url": "/service/?data=" + QueryString.data,
"async":false,
"success": function (data)
{
$('#example').dataTable().fnClearTable();
for(var i = 0; i < data.aaData.length; i++) {
$('#example').dataTable().fnAddData([
data.aaData[i][0],
data.aaData[i][1],
data.aaData[i][2],
data.aaData[i][3],
data.aaData[i][4],
data.aaData[i][5],
data.aaData[i][6]
]);
}
},
complete: function() {
oTable.fnDraw(false);
setTimeout(worker, 5000);
}
});
})();
} );
</script>
問題は、定期的なAJAXリクエストが行われるたびに、データテーブルの「検索:」オプションが編集できなくなることです。ただし、AJAX呼び出しの完了後に検索テキストボックスが有効になります。それで、ロードされたデータテーブルセットの検索テキストとAJAX呼び出しが行われたときに入力しようとすると、そこにテキストを追加/削除できませんか?
どうすれば同じことを克服できるか教えてください。