数据表:长度过滤器丢失预先设置的自定义过滤器值
datatables: Length filter loses prepended custom filter value
重新创建:
在 firebug 或 chrome 中打开您的网络面板以查看请求
更改自定义过滤器 #fundraiser_id,请注意 header form_data 显示您所做的新选择 (i_fundraiser)
将长度过滤器更改为任何新值
通过查看 header form_data,您现在会看到该参数已恢复为默认值
罪犯似乎是
.prependTo("#example_length")
通过评论出来,它工作正常
我不确定这里发生了什么,我试图通过 drawCallback 方法将前缀添加到 table,但存在同样的问题
"drawCallback": function( settings ) {
$("#fr_dd")
.prependTo("#example_length")
.removeClass('hide');
},
有什么想法吗?
我认为问题在于您正在尝试使用 prependTo
.
修改 DataTables 操作的区域
最好使用 dom 选项创建一个单独的 div 和 class my-filter
。
dom: "<'row'<'col-md-6 '<'my-filter'>l><'col-md-6 pull-right'>r>t<'row'<'col-md-6'i><'col-md-6'p>>",`
然后按如下方式处理 <div class="my-filter"></div>
:
$("#fr_dd")
.prependTo(".my-filter")
.removeClass('hide');
请参阅 this corrected example 进行演示。
重新创建:
在 firebug 或 chrome 中打开您的网络面板以查看请求
更改自定义过滤器 #fundraiser_id,请注意 header form_data 显示您所做的新选择 (i_fundraiser)
将长度过滤器更改为任何新值
通过查看 header form_data,您现在会看到该参数已恢复为默认值
罪犯似乎是 .prependTo("#example_length")
通过评论出来,它工作正常
我不确定这里发生了什么,我试图通过 drawCallback 方法将前缀添加到 table,但存在同样的问题
"drawCallback": function( settings ) {
$("#fr_dd")
.prependTo("#example_length")
.removeClass('hide');
},
有什么想法吗?
我认为问题在于您正在尝试使用 prependTo
.
最好使用 dom 选项创建一个单独的 div 和 class my-filter
。
dom: "<'row'<'col-md-6 '<'my-filter'>l><'col-md-6 pull-right'>r>t<'row'<'col-md-6'i><'col-md-6'p>>",`
然后按如下方式处理 <div class="my-filter"></div>
:
$("#fr_dd")
.prependTo(".my-filter")
.removeClass('hide');
请参阅 this corrected example 进行演示。