Listview jquery移动列表视图刷新不';t再过滤器jqm 1.4
我有一个使用数据输入属性提供过滤器的列表视图。动态更改listview后,我调用listview刷新。即使过滤器输入中仍有文本,也不会应用过滤器。你可以从这把小提琴中看出问题所在: 以下是设置它的html:Listview jquery移动列表视图刷新不';t再过滤器jqm 1.4,listview,jquery-mobile,filter,Listview,Jquery Mobile,Filter,我有一个使用数据输入属性提供过滤器的列表视图。动态更改listview后,我调用listview刷新。即使过滤器输入中仍有文本,也不会应用过滤器。你可以从这把小提琴中看出问题所在: 以下是设置它的html: <div id="aPage" data-role="page"> <div data-role="content"> <form> <input data-type="search" type="t
<div id="aPage" data-role="page">
<div data-role="content">
<form>
<input data-type="search" type="text" id="aFilter" />
</form>
<ul id="aList" data-role="listview" data-filter="true" data-input="#aFilter">
<li>aaa</li><li>bbb</li>
</ul>
<a data-role='button' href='#bpage'>test</a>
</div>
</div>
<div data-role='page' id='bpage'>
<div data-role="header">
<a data-rel="back" data-role="button">Back</a>
</div>
</div>
- aaa
- bbb
返回
以下是返回页面时运行的动态加载和刷新:
$(document).on('pagebeforeshow', '#aPage', function() {
$('#aList li').remove();
$('#aList').append($("<li>").append('aaa'));
$('#aList').append($("<li>").append('bbc'));
$("#aList").listview('refresh');
});
$(文档).on('pagebeforeshow','#aPage',function(){
$('#aList li')。删除();
$(“#aList”).append($(“”).append('aaa');
$(“#aList”).append($(“ ”).append('bbc');
$(“#列表”).listview('refresh');
});
过滤器,然后单击测试按钮,然后返回,您将看到过滤器不工作。我已经尝试在过滤器上触发一个更改函数,但这也不起作用。有什么办法可以让listview根据输入再次过滤吗?Omar在上面的最后一条评论奏效了。我不知道有一个单独的小部件,我应该调用刷新
$("#aList").filterable("refresh");
这将保留现有筛选器并刷新列表以反映筛选器的结果
谢谢。注意js代码中的更改您的更改的问题是我不想清除过滤器,我想保留现有的过滤器
data filter=“true”
从1.4开始就被弃用,并将在1.5上删除。您最好在1.4中使用filterable小部件。我正在使用filterable小部件。尽管他们说data filter=“true”已被弃用,但filterable小部件在没有它的情况下不会过滤。在这种情况下,您需要使用.filterable(“刷新”)
。检查这个答案