Javascript 更改jQuery datatable中显示的行数
为什么Javascript 更改jQuery datatable中显示的行数,javascript,jquery,datatable,Javascript,Jquery,Datatable,为什么jquery datatable(参见下面的代码)中的行数没有设置为5?默认情况下,它等于10 8)。为什么“iDisplayLength”:5在这里不起作用 <script> function loadData() { $.getJSON( 'modules/getData.php', function(data) { var oTable = $('#newspaper-b').data
jquery datatable
(参见下面的代码)中的行数没有设置为5?默认情况下,它等于10 8)。为什么“iDisplayLength”:5在这里不起作用
<script>
function loadData() {
$.getJSON(
'modules/getData.php',
function(data) {
var oTable = $('#newspaper-b').dataTable({
"sPaginationType":"full_numbers",
"aaSorting":[[3, "asc"]],
"bJQueryUI":true,
'iDisplayLength': 5,
'bLengthChange': false
});
oTable.fnDraw();
var list = data.flights;
var textToInsert = '';
for (var i = 0; i < list.length; i++) {
aux = list[i];
textToInsert += '<tr><td>';
textToInsert += aux.Var1;
textToInsert += '</td> </tr>' ;
}
$('table#newspaper-b tbody').html(textToInsert);
}
);
}
</script>
函数loadData(){
$.getJSON(
'modules/getData.php',
功能(数据){
var oTable=$('#报纸-b')。数据表({
“sPaginationType”:“完整编号”,
“aaSorting”:[[3,“asc”],
“bJQueryUI”:没错,
“iDisplayLength”:5,
“bLengthChange”:false
});
oTable.fnDraw();
var列表=data.flights;
var textToInsert='';
对于(变量i=0;i
试试这样的方法。DataTables具有内置选项,允许您从AJAX源中提取数据,而无需自己构建数据。并根据需要进行定制:
function loadData() {
var oTable = $('#newspaper-b').dataTable({
"sAjaxSource": 'modules/getData.php',
"sPaginationType": "full_numbers",
"aaSorting": [
[3, "asc"]
],
"bJQueryUI": true,
'iDisplayLength': 5,
'bLengthChange': false
});
};
要在加载数据后以某种方式修改表,您需要添加以下选项:
你可以试试
$('#example').dataTable( {
"aLengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]]
} );
这绝对是我找到的最简单的方法:
var oTable;
$(document).ready(function() {
$('.some-button').click( function () {
var oSettings = oTable.fnSettings();
oSettings._iDisplayLength = 50;
oTable.fnDraw();
});
oTable = $('#example').dataTable();
});
此外,如果您以前使用
“bStateSave”:true
和iDisplayLength
未指定/默认值运行/测试,则iDisplayLength
保存的默认值将覆盖指定新值的任何后续尝试,并且您仍将获得10行。尝试清空缓存,设置“bStateSave”:false
,指定所需的iDisplayLength
,然后再次运行。为什么要初始化datatable,然后显式将data+html放入表中;为什么不让datatable自己处理呢!这只是一段代码。我需要将最后两列作为输入字段。在这种情况下,如何定义某些列为输入字段?更新答案。DataTables几乎可以解决所有问题,但是有太多的选项,很难找到您需要的。搜索那个网站通常会得到很好的结果。
var oTable;
$(document).ready(function() {
$('.some-button').click( function () {
var oSettings = oTable.fnSettings();
oSettings._iDisplayLength = 50;
oTable.fnDraw();
});
oTable = $('#example').dataTable();
});