2014-10-09 42 views
0

好的。如何在调用ajax文档时删除触发器延迟?

问题很简单。

我想在用户更改<input type="text">的值时通过ajax调用某些文档。

甚至不仅仅是'键盘打字'事件。

包括这样......你知道,刀尖......这表示用户最后输入的结果...

我的意思是,刀尖......位置低于输入框..显示用户最近键入的结果...你知道......很难解释。不知道它的名字......

无论如何,我想调用AJAX文件之后用户改变<input type="text">价值......甚至只是键盘打字,通过点击鼠标选择该提示的一个包括...

嗯,我能“键式事件”后立即调用文档..

这是代码:

sensitiveInput.addEventListener('keyup',function(){ 
    callDocument_viaAjax(); 
} 

所以,我想类似的方法与上面的代码。

这是代码:

document.addEventListener('mouseup',function(){ 
    if(sensitiveInput.value !== '') { 
     sensitiveInput.onchange=function(){ 
      callDocument_viaAjax(); 
     } 
    } 
}); 

但这个代码有一些延迟..这意味着,没有意识到我想要做的UI。

当用户通过在输入框下方选择一个工具提示更改<input type="text" id="sensitiveInput">的值时,callDocument_viaAjax()未执行。

我不得不在文档单击一个更多的时间来执行callDocument_viaAjax() ....

我不知道为什么发生这种情况。

而且不知道如何解决这个问题?

请有人告诉我怜悯......

+0

我相信您所指的“工具提示”的名称可能是“自动完成”的。除了'keyup'事件以外,我还会尝试对'change'事件作出响应。 – enhzflep 2014-10-09 13:41:24

回答

0

我使用事件触发“输入”解决了这个问题。 即使不输入输入字段的焦点,'输入'事件也检测输入的变化。 (只有当输入字段丢失焦点时才会发生“更改”效果)