0
我有一个搜索结果div,如果用户在其外部任何地方点击,我想隐藏它。它不是搜索标准div的孩子。 我遇到的问题是.show()似乎并没有被解雇。我会认为.hide()只会在最初点击搜索按钮后触发。很明显,当搜索结果div关闭时,我会将.unbind()事件。在元素被绑定之前绑定事件
有点难住这一个,所以任何帮助将不胜感激。
下面是一些示例代码。
function search(){
$('#criteria').bind('click',function(){$('#results').hide();});
$('#results').show();
$('#results').html('some html from ajax call');
}
<div id=criteria>
<input id=criteria1 /><input id=criteria2 /><input id=criteria3 />
<!-- a whole page of input elements and a ajax lookup -->
<input type=text id=lookup /><input type="button" onclick="search()" value="search" />
</div>
<div id=results></div>
尝试添加隐藏回调的东西* *大像'body'或“文件”。 – Yoshi
@Yoshi但当我点击结果div时不会发生这种情况?我需要这个保持开放,以便可以选择多个项目。 –
请参阅:http://jsfiddle.net/WCLem/1/希望它有帮助。 – Yoshi