码迷,mamicode.com
首页 > Web开发 > 详细

js 清空 input[type=file]的值

时间:2018-04-27 21:08:07      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:删除   文件名   filename   bind   this   inpu   path   default   不能   

js 不能操作 input[type=file]
但你可以将这个 input 的 dom 元素删除掉,再新增一个,或者替换掉

$("#UploadFile").replaceWith(‘<input id="UploadFile" type="file"/>‘);

 

 

如果想在选同一文件上传时也会触发change事件

需要在在input的change事件回调中执行

$("#UploadFile").replaceWith(‘<input id="UploadFile" type="file"/>‘);

替换即可

但需要在绑定一次 change() 事件;

 

 

ChangeBind: function () {

$("#UploadFile").change(function () {
var filePath = $(this).val();
if (filePath.indexOf("docx") != -1 || filePath.indexOf("xlsx") != -1 || filePath.indexOf("pptx") != -1) {
$(".showFileName").val(filePath);
UploadFile();
} else {
$(".showFileName").val("");
alert("您未上传文件,或者您上传文件类型有误!");
return false
}
});
},

 

 


UploadFile: function (file) {
var filePath = $("#UploadFile").val();
//正则表达式获取文件名,不带后缀.
var name = filePath.replace(/^.+?\\([^\\]+?)(\.[^\.\\]*?)?$/gi, "$1");

//正则表达式获取后缀
var suffix = filePath.replace(/.+\./, "");

var fileName = name + "." + suffix;
if ($.trim(filePath) == "") {
alert("请选择需要上传的文件!");
return;
}
Common.Ajax({ Default: "FileUpload", FilePath: filePath, FileName: fileName }, function () {

}, function (data) {

}, function () {
$("#UploadFile").replaceWith(‘<input id="UploadFile" type="file"/>‘);    //Dom元素替换
ChangeBind();    //change事件绑定
});
},

js 清空 input[type=file]的值

标签:删除   文件名   filename   bind   this   inpu   path   default   不能   

原文地址:https://www.cnblogs.com/johnblogs/p/8964156.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!