Contoh dalam artikel ini menerangkan kaedah memuat naik imej dan fail menggunakan Struts2+jquery.form.js. Kongsikan dengan semua orang untuk rujukan anda, butirannya adalah seperti berikut:
jquery.form.js ialah pemalam jQuery rasmi yang menyokong muat naik fail tak segerak. Tapak web rasmi: http://plugins.jquery.com/form/
Digabungkan dengan Struts2 untuk memuat naik fail dengan mudah dalam tiga langkah
Secara amnya, halaman mungkin mempunyai lebih daripada satu borang Borang, jadi penyerahan borang pada satu bahagian akan menjejaskan borang yang lain Atas sebab ini, borang muat naik imej boleh dimuat naik menggunakan kaedah penyerahan bukan muat semula, iaitu tak segerak. muat naik. Pada masa ini, jquery .from.js berguna.
1. HTML
Import jS ini ke halaman dan tulis borang muat naik
<script type="text/javascript" src="/js/jquery.form.js"></script> <!—图片上传 --> <s:form id="picForm" name="picForm" action="/notice/showAddNotice.action" method="post" enctype="multipart/form-data"> <input type="file" name="pic" size="30"/><input type="submit" value="上传"/> </s:form>
2. JS
// 为表单绑定异步上传的事件 $(function(){ // 为表单绑定异步上传的事件 $("#picForm").ajaxForm({ url : "${pageContext.request.contextPath}/notice/uploadPic.action", // 请求的url type : "post", // 请求方式 dataType : "text", // 响应的数据类型 async :true, // 异步 success : function(imageUrl){ //alert(imageUrl); }, error : function(){ alert("数据加载失败!"); } }); // 为提交按钮绑定事件 $("#saveBtn").click(function(){ // 表单输入较验 var title = $("#title"); // 获取textarea的内容 var content = tinyMCE.get('content').getContent(); var msg = ""; if ($.trim(title.val()) == ""){ msg = "公告标题不能为空!"; title.focus(); }else if ($.trim(content) == ""){ msg = "内容不能为空!"; } msg = ""; if (msg != ""){ alert(msg); }else{ // 表单提交 $("#noticeForm").submit(); } });
3. Struts2Action
public class uploadPicAjax extends AbstractAjaxAction { private static final long serialVersionUID = -4742151106080093662L; /** Struts2文件上传的三个属性 */ private File pic; private String picFileName; private String picContentType; @Override protected String getJson() throws Exception { //获取项目部署的路径 String realPath = ServletActionContext.getServletContext() .getRealPath("/images/notice"); //生成新的文件名 String newFileName = UUID.randomUUID().toString()+"." +FilenameUtils.getExtension(picFileName);// 获取文件的后缀名 aa.jpg --> jpg FileUtils.copyFile(pic, new File(realPath + File.separator + newFileName)); return "/images/notice/" + newFileName; } /** setter and getter method **/ ...... }
4. Konfigurasikan Struts2.xml
<!-- 图片的异步上传 --> <action name="uploadPic" class="com.wise.hrm.action.notice.uploadPicAjax"> </action>
Baiklah, saya telah selesai menulis dari halaman ke hujung belakang. Kemudian anda boleh memuat naiknya. lengkap!
Pembaca yang berminat dengan lebih banyak kandungan berkaitan jQuery boleh menyemak topik khas di tapak ini: "Kesan penukaran JQuery dan ringkasan teknik", "Kesan seretan jQuery dan ringkasan teknik ", "Ringkasan kemahiran sambungan JQuery", "ringkasan kesan khas klasik biasa jQuery", "ringkasan penggunaan animasi jQuery dan kesan khas", " ringkasan penggunaan pemilih jquery " dan "Ringkasan pemalam dan penggunaan biasa jQuery "
Saya harap artikel ini akan membantu semua orang dalam pengaturcaraan jQuery.