我正在使用 OnKeyUp 验证字段。不幸的是,当用户在浏览器中选择自动完成建议时,它没有运行。
我想知道当用户点击浏览器输入建议时是否有任何方法可以触发我的 JavaScript。
我正在使用 OnKeyUp 验证字段。不幸的是,当用户在浏览器中选择自动完成建议时,它没有运行。
我想知道当用户点击浏览器输入建议时是否有任何方法可以触发我的 JavaScript。
对于 IE,您可以收听onpropertychange
. 对于 FF/Chrome,您可以收听oninput
. 如果您没有处于 quirks 模式,IE9 支持 oninput,因此您可能需要某种浏览器嗅探或功能检测代码来防止事件触发两次。
这是一个有效的 JSFiddle。您必须输入一些值并提交一次,以使其出现在浏览器的自动完成历史记录中。然后,当您单击自动完成建议时,您将看到它触发的事件。
另一种选择是完全禁用给定输入字段的自动完成功能:
<input type="text" name="myfield" id="myfield" autocomplete="off" />
您可以采取的一种选择是使用 YUI http://developer.yahoo.com/yui/event/#customevent的自定义事件模型触发事件
通过这样做,您可以明确地触发/触发您认为合适的方式