我使用 jQuery Mobile 过滤器列表:http: //jquerymobile.com/test/docs/lists/lists-search-with-dividers.html
是否可以移动输入字段的位置,以便我可以将其放入页面上已经存在的 div 中?
使用 jQuery 的 appendTo 似乎工作正常,但它是一种 hacky 解决方案。谢谢
我使用 jQuery Mobile 过滤器列表:http: //jquerymobile.com/test/docs/lists/lists-search-with-dividers.html
是否可以移动输入字段的位置,以便我可以将其放入页面上已经存在的 div 中?
使用 jQuery 的 appendTo 似乎工作正常,但它是一种 hacky 解决方案。谢谢
这是我在寻找类似问题的解决方案时发现的。
HTML 代码示例:
<div data-role="page" id="page-id">
<div data-role="content">
<div data-role="fieldcontain">
<input type="search" name="password" id="search" value="" />
</div>
<div class="filter-div" data-filter="one">1</div>
<div class="filter-div" data-filter="two">2</div>
<div class="filter-div" data-filter="three">3</div>
<div class="filter-div" data-filter="four">4</div>
<div class="filter-div" data-filter="five">5</div>
</div>
</div>
JS代码示例:
$(document).delegate('#page-id', 'pageinit', function () {
var $filterDivs = $('.filter-div');
$('#search').bind('keyup change', function () {
if (this.value == '') {
$filterDivs.slideDown(500);
} else {
var regxp = new RegExp(this.value),
$show = $filterDivs.filter(function () {
return ($(this).attr('data-filter').search(regxp) > -1);
});
$filterDivs.not($show).slideUp(500);
$show.slideDown(500);
}
});
});
这样,您可以将输入文本框放在页面上的任何位置,并且它应该正确过滤您想要的项目列表。
JSFiddle 演示:http: //jsfiddle.net/cZW5r/30/