jQuery dataTable为特定的引导模式设置页面限制
jQuery dataTable set page limit for specific bootstrap modal
我在同一页中有三个、四个,有时还有五个表,但它们大多在模式对话框中。结果是,我希望不在模式对话框中的表每页显示10个项目,而在模式对话框的表则显示在3上。
您可以在jsfiddle中查看一个工作示例。
我用以下参数初始化我的设置(默认情况下):
var settings = {
"bPaginate": true,
"bLengthChange": false,
"bInfo": true,
"bAutoWidth": false,
'aoColumnDefs': [{
'bSortable': false,
'aTargets': ['nosorting']
}],
'order': [
[0, 'DESC']
]
}
默认情况下,每页限制10条记录。之后,我需要验证该表是否属于模态,如果是,请添加一个属性名称"pageLength"来指定限制。
if ($(this).closest('.fade').length > 0) {
settings.push({
"pageLength": 3
});
}
我认为其中一个问题是因为设置实际上不是一个对象数组,我应该有这样的东西:var设置=[];
settings.push({bPaginate: true, bLengthChange: false}); // etc
// or
settings.push({"bPaginate": true, "bLengthChange: false"}); // etc
但是如果我使用这个方法,当我将这个变量添加到插件中时,dataTable将无法识别它。
$('.dataTable').dataTable(settings);
试试这个例子。它循环所有表,并使用正确的设置逐个创建它们。
js对象中的设置。你可以像settings.pageLength.一样简单地否决它
if ($('.dataTable').length > 0) {
var settings = {
"bPaginate": true,
"bLengthChange": false,
"bInfo": true,
"bAutoWidth": false,
'aoColumnDefs': [{
'bSortable': false,
'aTargets': ['nosorting']
}],
'order': [
[0, 'DESC']
]
}
$('.dataTable').each(function () {
if ($(this).closest('.fade').length > 0) {
settings.pageLength = 3;
}
$(this).dataTable(settings);
});
$('.dataTables_filter').empty();
}
相关文章:
- 显示模块模式在Knockout中设置模型的新实例
- 当定位模式设置为“0”时,总是达到关于地理定位的超时;仅设备”;
- 如何在javascript对象中设置属性的类型,就像mongoose模式设计一样
- 为模式设置的值在通过 AJAX 成功函数设置时不显示
- 如何使用 JavaScript 或 PHP 将 IE 11 企业模式设置为标准模式
- 设置多个观察程序以触发动态事件的角度替代解决方案 - 优化的观察者模式
- 如何在引导模式上设置本地存储
- 设置选择选项'选择'在模式引导中
- 仪表板中的小部件和设置需要一个可维护的Javascript回发模式
- 设置一个下拉填充到它's的值和文本在AngularJS和asp.net webApi中的编辑模式
- 可以't散列密码并将其设置为mongodb模式中的字段
- 在Backbone.js'上设置属性的模式是什么;模型和视图
- 如何设置sencha组件的多重叠加模式
- 根据当前屏幕窗口大小设置模式窗口的最大高度
- 如何在 asp.net 中设置文档模式怪癖
- 在余烬中将屏幕阅读器的焦点设置在模式警报上
- 将 CodeMirror 子字符串设置为粗体而不更改模式
- 用javascript设置模式对话框
- Bootstrap在php中动态设置模式标题
- 用Javascript重新设置模式弹出菜单的中心