当前位置: 首页 > Web前端 > HTML

input元素type为文件类型,change事件只在文件选择框显示点击取消后触发一次

时间:2023-04-03 00:50:04 HTML

html:js:$('#file').change(function(){console.log('changeevent');})详细说明问题:1、当输入的是文件类型时,文件选择框出来后,选择文件或点击取消后会触发change事件。2、选择文件后,再次选择同一个文件,此时将不再触发change事件。预期操作及解决方案:1、出现文件选择框后,点击取消,不执行change事件中的操作-->get$('#file').val()。判断this是否为空,如果为空,直接返回;例如:$('#file').change(function(){if($('#file').val()=='')return;console.log('changeevent');})2.选择同一个文件后,可以再次触发change事件。-->清除上次触发change事件后输入的值。例如:$('#file').change(function(){if($('#file').val()=='')return;console.log('changeevent');$('#file').val('')//清除原始数据})