清除值后触发onchange事件

时间:2018-07-04 05:38:44

标签: javascript jquery html angularjs

清除文件上传后,我拥有一个文件上传控件,如下所示。

<input type="file" id="flupload1" **onchange="angular.element(this).scope().UploadPoster(event)"** file-upload /><br />

//文件上传后清除

document.getElementById('flupload1').value = "";

问题是在再次清除文件上传事件触发并且又上传了一次文件上传功能之后。

但是这种行为仅在IE中表现出来。

清除值后如何停止事件触发?

1 个答案:

答案 0 :(得分:0)

此功能可以为您提供帮助:

function clearFileInput(id) 
{ 
    let oldInput = document.getElementById(id); 
    let newInput = document.createElement("input"); 
    newInput.type = "file"; 
    newInput.id = oldInput.id; 
    newInput.name = oldInput.name; 
    newInput.className = oldInput.className; 
    newInput.style.cssText = oldInput.style.cssText; 
    // TODO: copy any other relevant attributes 
    oldInput.parentNode.replaceChild(oldInput.cloneNode(), oldInput);
}
clearFileInput("fileInput");