2015-08-21 24 views
2

我只想问在数据表的下一页如何触发datetimepicker?它在第一页中正常工作,如本屏幕截图所示。 enter image description hereDatepicker没有在下一页触发Datatable

但是当我现在去到下一个页面,日历不再被触发:

enter image description here

有人建议重新初始化,我补充这样的:

var table = $('#ot_dataTables').DataTable(); 

$('#ot_dataTables').on('page.dt', function() {  
    $('#ot_dataTables').dataTable({ 
      order: [[ 0, "desc" ],[ 2, "desc" ]] 
     }); 
}); 

但仍然没有显示日历。任何帮助表示赞赏。

非常感谢。

+0

你检查你的'console'为'errors'当你''trigger'在datetimepicker'第二'弹出up'。可能有关于'jQuery'或其他的一些问题。 – vivekkupadhyay

+0

嗨@vivekkupadhyay,谢谢,但在控制台中没有错误,当我点击第二个弹出窗口。 :( –

+0

当你点击''触发'datetimepicker'时,请检查控制台。看起来你正在使用'bootstrap'' datetimepicker',并且你触发的这个弹出窗口是''modal-box''或'iframe '? – vivekkupadhyay

回答

0

我知道它晚了,但对于其他人可能会面临这个问题,请使用draw.dt而不是page.dt。每当绘制数据表时,事件就会触发。

var table = $('#ot_dataTables').DataTable(); 

$('#ot_dataTables').on('draw.dt', function() {  
    $('#ot_dataTables').dataTable({ 
     order: [[ 0, "desc" ],[ 2, "desc" ]] 
    }); 
}); 

page.dt - 页面更改事件 - 当表的页面更新解雇。

draw.dt - 绘制事件 - 在表格完成平局后触发。

0

所以这与Senjuti的回答相似,但我想发布我的,因为我能够做到这一点而不需要重新创建表实例。然而,她是对的,page.dt的听众在这种情况下不起作用,但draw.dt的听众会听。

在我的回答中,我将以您的表格为例,并假设表中的input标签的类名称为date-field。什么工作对我来说是回顾datepicker()上像这样的输入标签,

var table = $('#ot_dataTables').DataTable(); 
$('#ot_dataTables').on('draw.dt', function() { 
    $(".date-field").datepicker(); 
}