当前位置 : 主页 > 网页制作 > JQuery >

jquery-mobile – 在JQUERY MOBILE文本输入中自动完成

来源:互联网 收集:自由互联 发布时间:2021-06-15
我在网上搜索了很多,但无法找到任何解决方案.我正在制作一个webapp,我想要2个文本框来从用户那里获取数据.我想在此文本框中使用自动完成功能.自动完成的标记列表可在本地获得.我尝
我在网上搜索了很多,但无法找到任何解决方案.我正在制作一个webapp,我想要2个文本框来从用户那里获取数据.我想在此文本框中使用自动完成功能.自动完成的标记列表可在本地获得.我尝试了listview,但我想要的是,在用户从自动完成提示中选择一些选项后,文本框应该具有所选值,并且通过某个对象,我应该获得 javascript / php使用的文本框的值.这是一个非常基本的事情,但我无法做到.请帮帮我

我试过这个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');
});
网友评论