我在网上搜索了很多,但无法找到任何解决方案.我正在制作一个webapp,我想要2个文本框来从用户那里获取数据.我想在此文本框中使用自动完成功能.自动完成的标记列表可在本地获得.我尝
我试过这个jsfiddle.net/ULXbb/48/.但是这个问题是我在1个listview中选择了一些东西后,listview得到了相同的值.
为了不向两个搜索输入添加相同的值,您需要使用.closest(),
.next(),
.prev()和
.find()来定位它们.jQuery-Mobile以不同的方式使用数据过滤器增强列表视图.
07004
<form>
<input>
</form>
<ul data-role="listview">
<li>
<a>text</a>
</li>
</ul>
输入所在的表单与ul的级别相同.要定位输入框,您需要使用.prev(‘form’).find(‘input’).检查演示和下面的新代码.
$("input[data-type='search']").keyup(function () {
if ($(this).val() === '') {
$(this).closest('form').next("[data-role=listview]").children().addClass('ui-screen-hidden');
}
});
$('a.ui-input-clear').click(function () {
$(this).closest('input').val('');
$(this).closest('input').trigger('keyup');
});
$("li").click(function () {
var text = $(this).find('.ui-link-inherit').text();
$(this).closest('[data-role=listview]').prev('form').find('input').val(text);
$(this).closest('[data-role=listview]').children().addClass('ui-screen-hidden');
});
