jac*_*ack 5 javascript firefox javascript-events
我有一个表单,我在其中禁用提交按钮,直到用户输入所有必填字段.我最初使用onkeyup在必填字段上保留一个标签,并在填写所有必填字段时启用按钮.
但我让用户抱怨他们使用Google工具栏上的"自动填充"按钮填写表单,并且仍然禁用了提交按钮.
我通过为每个输入元素调用onpropertychange事件来修复IE中的这个问题,并且它工作得很好.
但是在Firefox中,我无法找到一个在点击谷歌自动填充按钮时会被触发的事件.
非常感谢.
从这个谷歌工具栏支持线程来看,自动填充似乎不仅对开发人员来说是一个巨大的PITA,而且也很难关闭。截至 8 月 9 日,谷歌声称它将尊重autocomplete="off"包含的属性form,但截至今天,此功能似乎尚未发布。
您过去可以为输入元素提供无意义的名称(例如name="xx_Address_32423423")来混淆自动填充(从而有效地禁用它),但他们通过查看元素名称中的子字符串来确定自动填充变得更加“智能”该字段是否可以自动填充(再次从该线程中的投诉判断)。
对于您的情况,您也可以随遇而安,找到onpropertychangeFirefox 的等效工具。来看看DOMAttrModified活动现场吧。具体来说,尝试检查event.attrName属性以查看是否value已被自动填充更改:
function realOnChange(event) {
    var attrName = event.propertyName || event.attrName;
    if(attrName === 'value') {
        // etc
    }
}
检查event.propertyName是为了与当前的实现保持兼容onpropertychange(如果可能的话)。
| 归档时间: | 
 | 
| 查看次数: | 3617 次 | 
| 最近记录: |