我有一个输入字段,想要实现自动补全建议。代码如下:
<input type="text" id="myinput">
<div id="myresults"></div>
在输入框的blur()
事件中,我想隐藏结果的
:
$("#myinput").live('blur',function(){
$("#myresults").hide();
});
当我在输入框中输入内容后,我会向服务器发送请求并获得JSON响应,将其解析为- 结构,并将这个
- 放入我的
- 元素时,我想将
- 中的值设置到输入框中,并隐藏
#myresults
div。$("#myresults ul li").live('click',function(){ $("#myinput").val($(this).html()); $("#myresults").hide(); });
一切都很顺利,但是当我点击我的li时,
blur()
事件会在click()
之前触发,并且输入的值无法获得li的html。我如何设置
click()
事件在blur()
事件之前触发?
#myresults
div中。
当我单击已解析的
blur
确实在单击li
后触发,那么您可能不需要在单击处理程序中执行$(“#myresults”).hide()
。看起来发生的情况是$(this).html()
返回一个空字符串。您可以记录或警告$(this).html()
以确保吗? - veeTrainblur()
和click()
处理程序上在firebug中添加观察点,但是在blur()
结束后没有任何操作。 - Egor Sazanovichshow()
来提供点击内容。您能否在那里创建问题? - veeTrain