当前位置: 首页 > 知识库问答 >
问题:

自动完成时有触发事件吗?

王建华
2023-03-14

我有一个很简单的表格。当用户在输入字段中键入时,我想更新他们在页面上其他地方键入的内容。一切正常。我已将更新绑定到keyupchangeclick事件。

唯一的问题是,如果您从浏览器的自动完成框中选择一个输入,它不会更新。当您从“自动完成”中选择时,是否会触发任何事件(显然既不是更改也不是单击)。注意,如果您从“自动完成”框中选择“模糊输入”字段,将触发更新。我希望它能在自动完成时被触发。

请参见:http://jsfidle.net/pykkp/(希望您过去用名为“email”的输入填写过很多表单)。

<input name="email" /> 
<div id="whatever">&lt;whatever></div> 
div { 
    float: right; 
} 
$("input").on('keyup change click', function () { 
   var v = $(this).val(); 
    if (v) { 
     $("#whatever").text(v);   
    }  
    else { 
        $("#whatever").text('<whatever>'); 
    } 
}); 

共有1个答案

衡安晏
2023-03-14

我建议使用monitorevents。它是web inspector和firebug中javascript控制台提供的一个函数,它打印出元素生成的所有事件。下面是如何使用它的示例:

monitorEvents($("input")[0]);

在您的示例中,当用户从autocomplete下拉菜单中选择一个项目时,Firefox和Opera都会生成input事件。在IE7-8中,change事件是在用户更改焦点之后产生的。最新的Chrome确实产生了类似的事件。

详细的浏览器兼容性图表可在此找到:
https://developer.mozilla.org/en-us/docs/web/events/input

 类似资料:
  • 问题内容: 我有一个非常简单的表格。当用户在输入字段中键入内容时,我想更新他们在页面上其他位置键入的内容。这一切都很好。我已经绑定的更新的,和事件。 唯一的问题是,如果您从浏览器的自动完成框中选择一个输入,则该输入不会更新。从自动完成功能中进行选择时,是否会触发任何事件(显然既不是也不是)。请注意,如果您从“自动完成”框中选择并 模糊 了输入字段,则将触发更新。我希望自动完成会立即触发它。 HTM

  • 如果我有一个带有自动完成字段的表单: 当用户从下拉菜单中选择自动完成值时(但在模糊事件之前)是否有事件触发?

  • 问题内容: 我的整个项目都使用(Bluebird)Promises,但是有一个使用EventEmitter的特定库。 我想要实现以下目标: 我在Promises链中读了EventEmitter的答案。这给了我一种执行’connect’事件的回调的方法。这是我到目前为止所到之处 现在如何进一步链接“ eventB”? 问题答案: 我假设您想为每个事件做不同的事情。即使由的动作触发,您也可以将其视为另

  • 使用mui.trigger()方法可以动态触发特定DOM元素上的事件。 .trigger( element , event , data ) element Type: Element 触发事件的DOM元素 event Type: String 事件名字,例如:'tap'、'swipeleft' data Type: Object 需要传递给事件的业务参数 示例 自动触发按钮的点击事件: var

  • 问题内容: 我正在尝试在32位Linux上使用LiteIDE(Go IDE)。除自动完成功能外,其他所有功能均可用。构建,运行,一切正常。该二进制文件似乎正在运行: 我可能做错了什么? 问题答案: 您可能需要设置GOROOT =。要在LiteIDE中进行设置,请寻找环境工具栏;它应该是一个下拉列表,可能已预先选择了“系统”和一个按钮。单击按钮以显示“编辑环境”窗格,然后双击“ system.env

  • 我正在尝试获得另一个功能是提交按钮IE。class=“sucessclass”将在成功或完成时执行。下面是我的代码: