0
我想使用reloadajax函數,但是當我運行它表時表示處理並沒有任何反應。該按鈕和一切工作在表內,它只是不重新加載表,並卡住。任何想法爲什麼?Jquery Datatables ReloadAjax
<script type="text/javascript">
$.fn.dataTableExt.oApi.fnReloadAjax = function (oSettings, sNewSource, fnCallback, bStandingRedraw)
{
// DataTables 1.10 compatibility - if 1.10 then versionCheck exists.
// 1.10s API has ajax reloading built in, so we use those abilities
// directly.
if ($.fn.dataTable.versionCheck) {
var api = new $.fn.dataTable.Api(oSettings);
if (sNewSource) {
api.ajax.url(sNewSource).load(fnCallback, !bStandingRedraw);
}
else {
api.ajax.reload(fnCallback, !bStandingRedraw);
}
return;
}
if (sNewSource !== undefined && sNewSource !== null) {
oSettings.sAjaxSource = sNewSource;
}
// Server-side processing should just call fnDraw
if (oSettings.oFeatures.bServerSide) {
this.fnDraw();
return;
}
this.oApi._fnProcessingDisplay(oSettings, true);
var that = this;
var iStart = oSettings._iDisplayStart;
var aData = [];
this.oApi._fnServerParams(oSettings, aData);
oSettings.fnServerData.call(oSettings.oInstance, oSettings.sAjaxSource, aData, function(json) {
/* Clear the old information from the table */
that.oApi._fnClearTable(oSettings);
/* Got the data - add it to the table */
var aData = (oSettings.sAjaxDataProp !== "") ?
that.oApi._fnGetObjectDataFn(oSettings.sAjaxDataProp)(json) : json;
for (var i=0 ; i<aData.length ; i++)
{
that.oApi._fnAddData(oSettings, aData[i]);
}
oSettings.aiDisplay = oSettings.aiDisplayMaster.slice();
that.fnDraw();
if (bStandingRedraw === true)
{
oSettings._iDisplayStart = iStart;
that.oApi._fnCalculateEnd(oSettings);
that.fnDraw(false);
}
that.oApi._fnProcessingDisplay(oSettings, false);
/* Callback user function - for event handlers etc */
if (typeof fnCallback == 'function' && fnCallback !== null)
{
fnCallback(oSettings);
}
}, oSettings);
};
$(document).ready(function() {
$('#example').dataTable({
"bProcessing": true,
"sAjaxSource": 'test2.php',
"bJQueryUI": true,
"bPaginate": true,
"sScrollX": "",
"bSortClasses": false,
"aaSorting": [[0,'asc']],
"bAutoWidth": true,
"bInfo": true,
"sScrollY": "100%",
"sScrollX": "100%",
"bScrollCollapse": true,
"sPaginationType": "full_numbers"
});
//Non registered checkouts
$(document).on('click', '.checkinNoReg', function() {
var id_of_item_to_approve = $(this).attr("id");
$.ajax({
url: "test3.php",
type: "POST",
data: "eventid=<?PHP echo $eventId;?>" + "&id=" + id_of_item_to_approve,
success: function(){
$('#example').dataTable().fnReloadAjax();
},
error:function(){
alert("Fail");
}
});
});
});
</script>