我在保存数据表中搜索值的状态时遇到了问题。我有数据表,用于提取详细信息数据。现在,每一列都有一个搜索字段。当我在搜索字段上写一些与该特定页面匹配的值时。现在,在我的应用程序中,如果我单击每一行,将显示一个带有详细信息值的关闭按钮。如果我单击关闭按钮,页面将关闭,但主页丢失了过滤器值。我要在关闭子页面后保留搜索值。
由于我陷入了困境,请帮助我。提前致谢。
单击关闭按钮时调用的功能::
$('#closeDivButton').on('click',function(){
$('#detailsPage').hide();
exampletable.$('#action').show();
}
在jsp页面中:
通过执行以下操作来保存数据表的状态:
.DataTable(
{
//"responsive" : true,
//"bStateSave": false,
"destroy" : true,
"autoWidth" : false,
"stateSave" : true,
"ajax" : {
}
$('#example tfoot td')
.each(
function() {
var title = $(
this)
.text();
//alert('search4:'+title);
$(this)
.html(
'<input id="searchbutton" type="text" size="10" placeholder="Search '+title+'" /><img src="'+contextPath+'/img/clear.png" id="clearsearch" title="Clear" width="15px;" height="15px;"/>');
//$(this).html( '<div class="input-placeholder"><input id="searchbutton" class="col-lg-3 col-md-3 col-sm-5 col-xs-5 form-control" type="text" size="10" placeholder="Search" /><span class="fa fa-search form-control-feedback"></span></div>' );
});
// Restore state
var state = exampletable.state.loaded();
//alert('state5:'+state);
if ( state ) {
exampletable.columns().eq( 0 ).each( function ( colIdx ) {
var colSearch = state.columns[colIdx].search;
if ( colSearch.search ) {
$( 'input', exampletable.column( colIdx ).footer() ).val( colSearch.search );
}
} );
exampletable.draw();
}
页面刷新后,它可以工作,但是单击关闭按钮以隐藏详细信息时,它不能工作。