2014-02-13 21 views
1

我希望能夠使用AJAX重新加載我的數據表,但需要能夠傳遞POST參數。jQuery DataTables fnReloadAjax - 如何在重新加載時傳遞新的POST參數?

這裏是我初始化該表通過POST傳遞自定義屬性(使用aoData):

oTable = jQuery('#searchresults').dataTable({ 
    "bProcessing": true, 
    "bServerSide": true, 
    "sServerMethod": "POST", 
"sAjaxSource": "ajax/index-ajax.cgi", 
"fnServerParams": function (aoData) { 
    aoData.push({ "name": "clientID", "value":jQuery("#clientID").val() }); 
    aoData.push({ "name": "username", "value":jQuery("#username").val() }); 
    aoData.push({ "name": "company", "value":jQuery("#company").val() }); 
    aoData.push({ "name": "email", "value":jQuery("#email").val() }); 
    aoData.push({ "name": "region", "value":jQuery("#region").val() }); 
    aoData.push({ "name": "role", "value":jQuery("#role").val() }); 
    aoData.push({ "name": "hrTitle", "value":jQuery("#hrTitle").val() }); 
    aoData.push({ "name": "searchType", "value":jQuery("#searchType").val() }); 
} 
}); 

這裏是我重新加載AJAX源:

oTable.fnReloadAjax(); 

如何將新的/更新的參數傳遞給fnReloadAjax調用?

回答

1

好吧,對於我的情況,我其實不需要做任何事情。 'fnServerParams'已被設置爲從輸入(即jQuery(「#clientID」)。val())中獲取我的自定義參數的值。基本上,它從數據表init中繼承。

當調用oTable.fnReloadAjax()時,它仍然使用自定義的'fnServerParams'。幸運的是,我不需要添加任何新的參數,但是如果你這樣做了,那麼我認爲你只需在調用fnReloadAjax()之前更新數據表對象上的'fnServerParams'對象。

相關問題