2
我想使用AJAX調用將值顯示到表中。用於它的代碼是,使用Ajax調用填充數據表
initTable();
function initTable(){
return $('#exEmpListTable').dataTable({
"bPaginate": false,
"sScrollY": "200px",
"bScrollCollapse": true
});
}
function tableActions(){
var oTable = initTable();
// perform API operations with oTable
oTable.fnSort([ [1,'desc']]);
}
$("#btnShowExEmpList").click(function (e){
var selectedShop = $('#Shop').val();
if(selectedShop == null){
alert(" Please select a shop first ");
return false;
}
if(selectedShop != null){
alert("==== Selected Shop ==== "+selectedShop);
var $exEmpDialog = $("#Dialog").dialog({
width :275,
height: 400,
resizable: false,
position: ['top', 200],
modal: true
});
$exEmpDialog.dialog('close');
$.ajax({
url : 'empReqCreateNewReq.do',
data : { getExEmpList: true, SelectedShop : selectedShop, ajaxCall : true },
method : 'GET',
dataType : 'json',
contentType: "application/json; charset=utf-8",
success : function(data) {
alert('success === ' +data.exemplist.length);
alert("======== ELEMENTS ======== "+JSON.stringify(data));
//rePopulateExEmpList(data);
//data = JSON.stringify(data);
$exEmpDialog.dialog('close');
//$(this).dialog('close')
var oTable = initTable();
oTable = $("#exEmpListTable").dataTable();
//oTable.fnClearTable(0);
oTable.oData[data];
oTable.fnDraw();
$exEmpDialog.dialog('open');
},
error : function(xhr, status) {
alert('Sorry, there was a problem while placing your ajax request. Contact Admin!');
}
});
}
//$("#Dialog").dialog();
});
運行此時,我可以看到警報機器人中的值。但在那之後,它顯示的錯誤消息
DataTables warning (table id = 'exEmpListTable'): Cannot reinitialise DataTable.
要檢索的DataTable對象此表,請通過其中任何參數到DataTable()函數,或設置bRetrieve爲true。或者,爲了使舊錶無法創建並創建新表,請將bDestroy設置爲true(請注意,通過API可以對配置進行很多更改,而這通常要快得多)。
請幫我解決這個問題。
我認爲你首先需要做ajax調用,然後初始化dataTable,如果你想再次獲取數據,你將需要銷燬它。 – jcubic