解决重复上传 onchange 事件不生效问题
阿V
2023-09-28

在做项目的是时候,上传表单使用到了onchange事件,当上传失败后,重复上传该文件,没有反应,发现是onchange没有生效。
onchange的触发条件是当input框的值有变化时才能触发,所以,当上传的文件是同一个文件时不能触发onchange。
例如我的代码:
uploadFile.onchange = function () {
var formData = new FormData($('form')[0]);
formData.append('file', $('input[type=file]').attr('name'));
......
}其中有判断当上传失败则提示错误信息这一段:
xhr.addEventListener("load", function (event) {
var data = eval('(' + xhr.response + ')');
if(data.code == 0){
layer.alert(data.msg);
layer.close(uploadloading);
return false;
}解决方法:
当上传失败时,把上传表单的值置空,加上
$("#js-upload-files").val('');xhr.addEventListener("load", function (event) {
var data = eval('(' + xhr.response + ')');
if(data.code == 0){
layer.alert(data.msg);
layer.close(uploadloading);
$("#js-upload-files").val('');
return false;
}文章版权声明
1、本网站名称:阿V编程
2、本站永久网址:https://www.1892zyw.com
3、本网站的部分文章内容/部分资源可能来源于网络,仅提供给大家学习或参考,如有侵权,请联系站长QQ进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,如有发现请向站长举报