项目中涉及到这一需求,在此贴出代码分享给大家,
有2中方式,一种是input中使用accept 方式
一种是使用js正则表达式判断,个人推荐使用js正则表达式,因为accept 有的浏览器并不支持,而且accept并不是强制。
第一种
<input type="file" name="file" id="ck_attach_path" style="98%;" accept=".xls,.doc,.txt,.pdf" />
第二种
<input type="file" name="file" id="ck_attach_path" id="file" style="98%;" onchange="CheckFile(this);" >
//文件上传验证. function CheckFile(obj) { var array = new Array('txt', 'pdf', 'doc','docx','xls','xlsx','pptx'); //可以上传的文件类型 if (obj.value == '') { alert("选择要上传的文件!"); return false; } else { var fileContentType = obj.value.match(/^(.*)(.)(.{1,8})$/)[3]; var isExists = false; for (var i in array) { if (fileContentType.toLowerCase() == array[i].toLowerCase()) { isExists = true; return true; } } if (isExists == false) { obj.value = null; alert("上传文件类型不正确!"); return false; } return false; } }