how can I trigger jquery datatables fnServerData to update a table via AJAX when I click a button?

前端 未结 7 972
陌清茗
陌清茗 2020-12-28 17:15

I\'m using the datatables plugin with server-side data and am updating the table using AJAX.

My dataTables setup looks like this:

tblOrders = parame         


        
7条回答
  •  谎友^
    谎友^ (楼主)
    2020-12-28 17:29

    Similar to Mitja Gustin answer. Changed a loop, added sNewSource.

    $.fn.dataTableExt.oApi.fnReloadAjax = function (oSettings, sNewSource, myParams ) {
        if(oSettings.oFeatures.bServerSide) {
            if ( typeof sNewSource != 'undefined' && sNewSource != null ) {
                oSettings.sAjaxSource = sNewSource;
            }
            oSettings.aoServerParams = [];
            oSettings.aoServerParams.push({"sName": "user",
                "fn": function (aoData) {
                    for(var index in myParams) {
                        aoData.push( { "name" : index, "value" : myParams[index] });
                    }
                }
            });
            this.fnClearTable(oSettings);
            return;
        }
    };
    
    var myArray = {
        "key1": "value1",
        "key2": "value2"
    };
    
    var oTable = $("#myTable").dataTable();
    oTable.fnReloadAjax(oTable.oSettings, myArray);
    

提交回复
热议问题