我已经搜索了高和低为这个问题的答案。我有一个使用listview搜索过滤器的应用程序。但是,当用户离开页面时,搜索过滤器会“记住”以前的搜索。如何在列表视图中清除或重置搜索过滤器栏?
我的问题:当用户离开页面时,如何重置搜索过滤器?下一次打开页面时,我希望清除搜索过滤器,以便再次显示整个列表,并且以前的搜索“已被忘记”?
我已经搜索了高和低为这个问题的答案。我有一个使用listview搜索过滤器的应用程序。但是,当用户离开页面时,搜索过滤器会“记住”以前的搜索。如何在列表视图中清除或重置搜索过滤器栏?
我的问题:当用户离开页面时,如何重置搜索过滤器?下一次打开页面时,我希望清除搜索过滤器,以便再次显示整个列表,并且以前的搜索“已被忘记”?
首先,你需要清空它是这样的:
$('input[data-type="search"]').val("");
$('input[data-type="search"]').trigger("keyup");
工作的jsfiddle例如:http://jsfiddle.net/Gajotres/fEV3J/
HTML:
<div data-role="content">
<div data-role="fieldcontain">
<ul data-role="listview" data-filter="true">
<li><a href=#>Cat</a></li>
<li><a href=#>Dog</a></li>
<li><a href=#>Mouse</a></li>
</ul>
</div>
<div data-role="fieldcontain">
<input type="button" value="Clear" id="clear-filter"/>
</div>
</div>
JS:
$(document).on('click', '#clear-filter', function(){
$('input[data-type="search"]').val('');
$('input[data-type="search"]').trigger("keyup");
});
非常感谢您试图回答我的问题。我不想使用按钮来清除搜索过滤器。我想在用户离开搜索页面或“关闭”搜索页面时清除它。我将使用您提供的代码来尝试获得解决方案。这是一个好的开始。如果我能找到答案,我会在这里发布。再次感谢你的帮助。我知道这花了一些时间来做到这一点,我很感激。 -Rachel – user1204493
你可以试试这个:
$('a[data-icon="delete"]').trigger('click');
Additionaly你可能想在前面加上你可能有像这样
$('#myForm a[data-icon="delete"]').trigger('click');
最有可能的浏览器缓存和请张贴一些代码,所以任何形式我们可以帮助更多 – Sedz