KCl*_*ugh 14 javascript firefox autocomplete
我正在尝试订阅更改ajax自动完成表单的输入标记上的事件.当用户单击FireFox的自动完成建议时,不会触发这些更改事件.
我见过IE的修复程序,但不是FireFox.您可以在此处查看此行为
重新创建的步骤:在其中一个框中键入任何输入,然后单击"提交".
再次在同一个框中键入值.
您应该会在输入框下方看到自动填充建议框.请注意,单击建议不会触发更改事件(它也不会触发click事件)
目前我唯一的选择是在此字段上禁用自动完成功能,但我不想这样做.
Jet*_*son 31
使用自动完成时Firefox 4+触发'oninput'事件.
这里有一些jQuery使这个更具可操作性:
$('#password').bind('input', function(){ /* your code */});
Run Code Online (Sandbox Code Playgroud)
我遇到了同样的问题.
显然,有密码管理器调试可用 https://wiki.mozilla.org/Firefox:Password_Manager_Debugging
所以我发现对我来说DOMAutoComplete事件被触发了,我已经设法通过jQuery的绑定将它连接到一个字段上
$('#email').bind('DOMAutoComplete',function() { ...
Run Code Online (Sandbox Code Playgroud)
如果它让你感觉更好,那就是一个众所周知的错误
建议的解决方法:(不是我的,从这里开始
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Mozilla Firefox Problem</title>
<script type="text/javascript">
function fOnChange()
{
alert('OnChange Fired');
}
var val_textBox;
function fOnFocus()
{
val_textBox = document.getElementById('textBox').value;
}
function fOnBlur()
{
if (val_textBox != document.getElementById('textBox').value) {
fOnChange();
}
}
</script>
</head>
<body>
<form name="frm">
<table>
<tr>
<td><input type="text" id="textBox" name="textBox" onFocus="fOnFocus()" onBlur="fOnBlur()"></td>
</tr>
<tr>
<td><input type="submit" value="Submit"></td>
</tr>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14085 次 |
| 最近记录: |