gpt4 book ai didi

jquery - 我可以在 jQuery 中将值数组作为 fnServerParams 传递吗

转载 作者:行者123 更新时间:2023-12-01 01:34:45 25 4
gpt4 key购买 nike

我正在使用 jQuery DataTables 在表单上显示数据。我有一个要求,需要发送多个参数来过滤数据。

目前我正在使用:

$('.datatable').dataTable({
"sDom": "<'row'<'span3'l><'span6'f>r>t<'row'<'span5'i><'span4'p>>",
"bServerSide": true,
"sAjaxSource": //myurl,
"bProcessing": true,
"sPaginationType": true,
"bSort": true,
"iDisplayLength": 20,
"fnServerParams": function (aoData) {
if (filtersAdded === "true") {
aoData.push({ "name": "chk1", "value": true});
}
},
"fnCreatedRow": function (nRow, aData, iDataIndex) {
// Do stuff with row data
},
"bFilter": false,
"bDestroy": true

});

其中 chk1、chk2、.. 是复选框,为了简单起见,我们假设用户将其检查为 true。现在在我的代码中,我可以轻松检索 chk1 值,但我的要求是如果用户选择 3 或 4 个复选框(我的页面上将有 7-8 个复选框)怎么办?我想将数组中所有这些 3-4 个选定的复选框值传递给代码(MVC)。

我现在正在做的是,获取数组中所有选定的复选框数据:

var filterarray = [];
filterarray .push({ "name": "chk1", "value": true});
filterarray .push({ "name": "chk2", "value": true});

现在我如何将filterarray作为fnServerParams值传递?任何帮助将不胜感激。

最佳答案

不知道我的理解是否正确。您想发送一次信息还是想在用户设置/取消设置复选框时刷新信息?

如果您需要为 ajax 请求 POST 数据,您可以使用以下代码:

 var oTable = $('#selector').dataTable( {
"sAjaxSource": "your-url",
"fnServerData": function ( sSource, aoData, fnCallback ) {
aoData.push( {"name": "param1", "value": 1} );
aoData.push( {"name": "param2", "value": 2} );
$.ajax( {
"dataType": 'json',
"type": "POST",
"url": sSource,
"data": aoData,
"success": function(result){
if (result.iTotalRecords == 0) {
$("#datatable_unit_users").hide();
} else {
$("#datatable_unit_users").show();
fnCallback(result)
}
}

} );
},
...
)};

如果您需要刷新信息,您可以使用 API 函数 fnReloadAjax ( http://datatables.net/plug-ins/api )。

希望对你有帮助

关于jquery - 我可以在 jQuery 中将值数组作为 fnServerParams 传递吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17552430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com