[英]<input type=“file”> change event firing again when navigating back to the page
[英]JS- Input type file firing change evt when there is no change
嗨,我一直在使用相同的输入来上传文件的脚本,当我按照以下步骤操作时会出现问题:
问题是当我认为不必要时会提醒文本
码:
<form parameters="values...">
<input type="file" id="file"/>
</form>
<script>
$(document).ready(function () {
$("#file").on("change", function () {
let input = this;
if(input.files && input.files[0]) {
//upload
}else {
alert("Error: Incompatible browser");
}
});
});
</script>
除非没有浏览器兼容性,否则永远不会发出警报,但此“ BUG”会使警报出现
这是一项Chrome 功能 ,当用户单击“取消”时,它实际上会清除之前设置的输入。
IMO, “清除”按钮会更有意义,但是由于文件拾取UI是操作系统之一,所以我想他们无法更改它。
但是无论如何,您需要检查不兼容的浏览器
// in onchange
if(input.files){
甚至更好
// before assigning the change handler
if('FileList' in window){
由于不支持<input type="file">
浏览器既不会设置input.files
,也不会具有FileList构造函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.