2013-07-25 88 views
-1

fiddle「隱藏」 李

我有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文字去到輸入。如果我使用hide - 那個元素不會顯示,當我刪除輸入中的sting。

我需要 - 點擊li,從li apears輸入,所有下拉li皮文本,但如果我從輸入,li apears刪除字符串。怎麼做?

謝謝。

+1

+1爲你的小提琴:) – nXqd

+0

你是否試圖做一個自動完成? – Archer

+1

您的HTML代碼無效。我可以看到至少4個錯誤。 – Virus721

回答

2

你可以試試這個(要隱藏選擇後列表項)

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

DEMO.

+0

是的,我可以檢查演示。 –

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文檔任何東西。

0

我很新的JQuery成,但希望這是你想要的。 Demo