Firefox:onchange触发器没有改变

时间:2015-04-21 15:32:26

标签: javascript firefox

在WebKit中,onchange仅在文件更改时触发,而不在Firefox中触发。 这是一个众所周知的问题,但我只是发现如何让Chrome表现得像Firefox而不是对话。

var control = $('label.empty > input');    
$(control).on('change', function(){});

如果文件发生变化,我怎样才能在firefox中使用它?

Related

2 个答案:

答案 0 :(得分:0)

你可以试试这个,

如果文件输入是

<input type="file" id="fileId"/>

Javascript代码 -

document.getElementById("fileId").addEventListener("change", function(){
console.log("file changed...");
// put you on change code here
},false);

答案 1 :(得分:0)

您可以存储文件输入的旧值并将其检查到新值 如果匹配,则返回;否则它是一个新的。

&#13;
&#13;
document.querySelector('input').addEventListener('change', function(){
    if(this.__value__===this.value) return;
    this.__value__=this.value;
    alert('new One!');
    });
&#13;
<input type="file">
&#13;
&#13;
&#13;