表单中type=file字段的value属性无法由js来附值,一但选中某个文件后,如果用户不手动去清空那么这个值将保留,提交表单时对应文件也会被提交上去.当然在服务器上会再次验证,不过为了避免上传不必要的的文件,还是有必要提前在客户端验证失败后将文件上传字段清空.
具体做法是将file元素从DOM中移除,然后添加个"同名同姓"的上去,以下是基于JQuery写的一段代码
function clearUpload(){
$("#fuImg").remove(); //移除原来的
var upfile=$(" ").attr("name","fuImg").attr("id","fuImg");
upfile.attr("type","file").addClass("w160");
upfile.appendTo("#upload"); //添加新的
upfile.change(fileChangeHandle); //绑定处理,
}