Javascript 从datatable获取lengthmenu值
我有以下选择作为我的一部分:Javascript 从datatable获取lengthmenu值,javascript,jquery,datatables,Javascript,Jquery,Datatables,我有以下选择作为我的一部分: "lengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]], 我正在尝试获取为lengthMenu选择的值。然而,在查看jQueryAPI之后,我似乎找不到任何东西可以在它被更改后获得这个值。你们能想出什么可行的解决方案吗?这就是你们想要的!page.info()函数将返回有关数据表分页的许多不同信息,包括每页上显示的记录数(lengthMenu的选定值) 下面是page.info()调用将返回的
"lengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
我正在尝试获取为lengthMenu选择的值。然而,在查看jQueryAPI之后,我似乎找不到任何东西可以在它被更改后获得这个值。你们能想出什么可行的解决方案吗?这就是你们想要的!page.info()
函数将返回有关数据表分页的许多不同信息,包括每页上显示的记录数(lengthMenu的选定值)
下面是page.info()
调用将返回的所有对象的列表(您可以引用的所有内容,如上面的示例所做的:
{
"page": 1, //current page (0 based index)
"pages": 6, //total number of pages
"start": 10, //index of first element on page
"end": 20, //index of last element on page
"length": 10, //lengthMenu setting - this is what you want -
"recordsTotal": 57, //total number of records
"recordsDisplay": 57, //total number of records to display after filtering
"serverSide": false //whether or not serverside processing is used
}
考虑到所有这些,你真正想要的是这样的
var table = $('#example').DataTable(); //note that you probably already have this call
var info = table.page.info();
var lengthMenuSetting = info.length; //The value you want
所有这些(更详细和一些例子)都可以通过上面提供的链接获得
编辑:实际上,如果您只需要页面长度,您可以使用table.page.len()
来获取页面长度,而不是获取table.page.info().length
我认为您不应该使用lengthmenu
$('#table_id').DataTable( {
"aLengthMenu": [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]]
});
是的,Chris H的答案是正确的,而且有效。我最终发现另一个可能的解决方案是$(“select”).val()
谢谢大家的帮助,我试着在网上四处寻找这个问题的答案,但找不到太多。希望这些答案将来能帮助其他人。aLengthmenu只是1.10版之前的DataTables选项;如果您使用DataTables 1.10+我建议您使用的是与DataTables有关的sues在DataTables论坛上搜索自己,或向他们提问。插件的作者非常擅长在几天内回答问题。投票支持这个答案,因为当你在一个页面上有多个表时,它会起作用。