问题描述:
-
当input类型为file时,前后两次重复选取同一个文件将不能触发相应的onchange()事件;
-
若前后两次选取文件不同,则无异常;
解决方案:
-
查询知这是由于input对象的val值没有发生改变造成的;
-
处于安全性的考虑,目前主流浏览器已经禁止使用JS对input的val进行更改;
-
因此,直接删除该input的dom然后重新添加一个一样的即可;
$(".xxx input[type='file']").remove(); $(".xxx .before_input_dom").before("<input type='file' class='form-control' name='xxx'>"); $(".xxx input[type='file']").on('change', func());
网友评论