-1

小提琴

我在 index.html 中有:

<div data-role="fieldcontain" id="Container">
<ul id="my_ul" data-role="listview" data-filter="true" data-filter-reveal="true" data-filter-placeholder="Text" data-inset="true">
    <li class="ui-screen-hidden"><a href="#">12</a></li>
    <li class="ui-screen-hidden"><a href="#">123</a></li>
    <li class="ui-screen-hidden"><a href="#">1234</a></li>
</ul>
</div>

js:

$("#my_ul li").click(function() {
    $('#Container form input').val($(this).text());
    //$(this).hide();
});

因此,当我单击 li 时,文本从li转到输入。如果我使用hide- 当我删除输入中的刺痛时,该元素不会出现。

我需要 - 单击输入中li的 apers 中的文本li,所有下拉菜单都li隐藏,但如果我从输入中删除字符串,li则 aears. 怎么做?

谢谢。

4

3 回答 3

2

你可以试试这个(选择后隐藏列表项)

$("#my_ul li").click(function() {
    $('#Container form input').val($.trim($(this).text()));
    $('#my_ul').children().addClass('ui-screen-hidden');
});

演示。

于 2013-07-25T12:19:52.670 回答
0

哈克解决方案是自己处理隐藏和显示 ul。

小提琴: http: //fiddle.jshell.net/Qyvhc/8/

$("#my_ul li").click(function() {
    $('#Container form input').val($(this).text());
    $("#my_ul").hide();
});

$('#Container form input').on('focus', function () {
    $("#my_ul").show();    
});

我怀疑这是最好的解决方案,但我在 API 文档中看不到任何可以实现这一点的东西。

于 2013-07-25T11:46:31.627 回答
0

我对 JQuery 很陌生,但希望这是你想要的。 演示

于 2013-07-26T09:26:22.097 回答