【发布时间】:2013-08-27 11:32:44
【问题描述】:
我需要在一个页面上有 3 个 jquery 移动列表视图(使用 listviewbeforefilter),由一个主文本输入控制。
我的想法是创建三个普通的列表视图:
<div>
<input type="text" id="MasterBar">
</div>
<div data-theme="a" class="ui-block-a">
<ul id="ListResults1" data-filter-theme="b" data-role="listview" data-inset="true" data-filter="true" data-filter-placeholder="Enter Terms..." data-mini="true" data-split-icon="info" data-theme="a" data-divider-theme="a" data-split-theme="a"></ul>
</div>
<div data-theme="a" class="ui-block-b">
<ul id="ListResults2" data-filter-theme="b" data-role="listview" data-inset="true" data-filter="true" data-filter-placeholder="Enter Terms..." data-mini="true" data-split-icon="info" data-theme="a" data-divider-theme="a" data-split-theme="a"></ul>
</div>
<div data-theme="a" class="ui-block-c">
<ul id="ListResults3" data-filter-theme="b" data-role="listview" data-inset="true" data-filter="true" data-filter-placeholder="Enter Terms..." data-mini="true" data-split-icon="info" data-theme="a" data-divider-theme="a" data-split-theme="a"></ul>
</div>
当用户在主输入中输入文本时,它应该触发三个列表视图。子列表视图需要位于 $('#MasterBar') 输入的不同列中。
$(document).ready(function()
{
//hide all of the input fields
$('.ui-input-search').hide();
('#MasterBar').keyup(function()
{
$("input[data-type='search']").val(this.value);
});
});
目前它似乎不起作用。我不知道如何触发事件。
$("input[data-type='search']").trigger("listviewbeforefilter");
这是可行的还是有更好的方法?
【问题讨论】:
-
为什么不使用具有 autodividers="true" 属性的列表分隔符而不是三个列表视图
-
不幸的是,这是设计的要求。每个列表视图将指向 3 组完全不同的数据。
标签: jquery-mobile jquery-mobile-listview