标题排序中的Jquery数据表下拉过滤器

时间:2012-10-23 05:52:09

标签: javascript jquery drop-down-menu datatables

我想在其标题上创建一个带有下拉列表框的数据表,该数据表根据框中的选定列过滤要显示的行。我修改了这里的示例column filtering example以显示标题

中的下拉列表框
   /* Add a select menu for each TH element in the table footer */
   //   $("tfoot th").each( function ( i ) {
      $("thead th").each( function ( i ) {
       ...

它工作正常,但是当我点击下拉列表框时它会执行排序。当我在下拉列表上执行操作时,是否可以禁用排序,当我单击单元格中不属于下拉列表的任何位置时触发排序。

感谢。

2 个答案:

答案 0 :(得分:3)

$("thead th").each( function ( i ) {
    this.innerHTML = fnCreateSelect( oTable.fnGetColumnData(i) );
    $('select', this).change( function () {
        oTable.fnFilter( $(this).val(), i );
    } );
    $('select', this).click( function (event) {
        event.stopPropagation();
    } );
} );

答案 1 :(得分:0)

不要为select或删除排序调用处理onChange事件。我相信你可以绑定单元格中的click事件。如果没有,请格式化表格以在每个单元格中包含一个锚标记,您可以在其中处理单击事件。