<input type="file" name='testFile' id="violateItemUpload" onchange='uploadRecordFile()' />
注:使用异步ajax前,要额外导入一个js文件。当然,jquery的js文件肯定不能少。
<pre name="code" class="javascript"><script type="text/javascript" src="js/jquery.js" ></script> <script type="text/javascript" src="/jqueryUpload/ajaxfileupload.js" ></script> <pre name="code" class="html">//记录中新增文件图片(记录ID) function uploadRecordFile(val){ $.ajaxFileUpload ({ url: 'test!uploadRecordFile.action',secureuri: false,fileElementId: 'violateItemUpload',dataType: 'html',beforeSend: function() { $("#loading").show(); },complete: function() { $("#loading").hide(); },success: function(data,status) { if(data=="error"){ $.messager.alert('提醒',"系统出错,请联系管理员","error"); }else{//data可传过来代表是否文件保存成功,也可以传过来保存成功后的文件路径 <img src="${pageContext.request.contextpath}/qstdUploadAction!queryEndorsementFile2.action?path="+data />//通过流的形式把图片显示出来 } } } ) return false; }
第三步:后台JAVA代码,用的是Struts2的action方式。
public class TestAction extends PaginationAction { private File testFile; public File getTestFile() { return testFile; } public void setTestFile(File testFile) { this.testFile= testFile; } public String uploadRecordFile() { try { String path = RequestPath.root + RequestPath.test;//保存文件的路径 File file = new File(path); file.mkdirs(); String fileName = recordId + "_" + System.currentTimeMillis() + ".jpg"; boolean isSave = FileUploadUtil.upload(testFile,path,fileName);//保存文件到指定的地址,成功则返回路径 if (isSave) { writeMsg(path + fileName); } else { writeMsg("error"); } } catch (Exception e) { e.printstacktrace(); logger.error("错误信息:",e); } return null; } }
ajaxfileupload.js文件下载地址:http://download.csdn.net/detail/shi_hong_fei_hei/7596803
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。