我做了一个校验 ,想用ajax进行文件的验证,这时候就需要使用ajax上传文件进行验证
首先需要 一个js包
jquery 和 ajaxfileupload.js
ajaxfileupload 下载地址 :点击打开链接
使用方法:
前台js
$("#submitbtn").click(function(){ $("#dmIfSubmit").attr("value","1"); $.ajaxFileUpload({ url:'${base}/qiye/direcapply!checkFile.action',//后台需要走的action secureuri:false,fileElementId:'files',//文件选择框的id属性 success: function (data,textStatus) { //相当于java中try语句块的用法 alert(data.activeElement.innerHTML); alert("上传图片成功!"); },error: function (data,status,e) { //相当于java中catch语句块的用法 } }); });
public String checkFile() throws IOException{ msg=""; if(null == files){ /**若文件为空返回""**/ msg= "宣传材料不能为空"; }else{ // 判断数据是否正确 // 文件后缀名 int index = StringUtils.lastIndexOf(filesFileName,'.'); if (index == -1) { msg= "文件类型错误!"; } /**获取文件后缀名**/ String extFileName = StringUtils.substring(filesFileName,index + 1); String forbitName = "doc-docx"; String[] forbitNames = forbitName.split("-"); for(int i= 0 ;i<forbitNames.length ; i++){ if(!extFileName.equalsIgnoreCase(forbitNames[i])){ msg= "请上传正确的附件,附件不能类型不能为"+forbitNames[i]; break; } } } HttpServletResponse response = (HttpServletResponse)ActionContext.getContext().get(ServletActionContext.HTTP_RESPONSE); response.setHeader("content-type","text/html;charset=utf-8"); //获得输出流 OutputStream out = response.getoutputStream(); //编码 发送响应体 out.write(msg.getBytes("utf-8")); //response.getWriter().println(new String (msg.getBytes("ISO8859_1"),"utf-8")); return null; }这样就可以使用ajax 获取页面文件
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。