日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jquery 上传图片 java_jquery 异步提交表单 上传图片小例子

發布時間:2025/3/15 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jquery 上传图片 java_jquery 异步提交表单 上传图片小例子 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這次做ecshop項目用到了一些小東西,這里我就把在項目中用到的一個異步上傳多個產品圖片的小東西,不是多好,但是是我自己查資料搞出來的。放這里,給自己和大家一個參考,歡迎丟磚!(jquery+spring mvc +jquery.form.js).上代碼:

一.傳統型:

1.jsp頁面(上傳3張圖片)注意:這里各個form表單里的DOM的ID都是有顧慮的哦

這里用到了一個jquery.form.js他是jquery中用來異步提交表單的插件

寶貝圖片1:

寶貝圖片2:

?

寶貝圖片3:

?

$(document).ready(function() {

/* 圖片上傳 */

$(".imgSave").click(function(){

var objhid = $(this).next().val();//處理多個form獲取相關對象問題

if ($("#imgInput"+objhid).val() == "") {//先判斷是否已選擇了文件

alert("please select a p_w_picpath to upload!");

return;

}

$("#imgid"+objhid).css("display","block");

$("#uploadImgForm"+objhid).ajaxSubmit({

dataType:'text',/

success:function(msg){//文件上傳成功后執行,msg為服務器端返回的信息

var newimg = msg.substr(0,msg.length-1);

$("#Id"+objhid).val(newimg);

$("#imgid"+objhid).attr("src",newimg);

}

});

$("#imgInput"+objhid).val("");//清空文件域

return false; //防止刷新?

});

});

2.java控制器

/**

* 異步上傳產品圖片action

* @param request

* @param response

*/

@RequestMapping(value = "ajaximg", method = RequestMethod.POST)

public void ajaxGoodsImg(MultipartHttpServletRequest request,

HttpServletResponse response) {

PrintWriter out = null;

try {

response.setContentType("text/xml; charset=UTF-8");

// 以下兩句為取消在本地的緩存

out = response.getWriter();

MultipartFile p_w_picpathfile = request.getFile("photo");

HttpSession session = request.getSession();

String flag = null;

if (null != p_w_picpathfile && 0 != p_w_picpathfile.getSize()) {

flag = Digest.saveFile(//這個方法就是具體的實現保存文件的功能了,若成功返回文件全路徑,若失敗則返回false字符串,這個方法自己看著寫吧

session.getServletContext().getRealPath(""), p_w_picpathfile);

if (flag == "false") {

out.write("false");

}

out.write(flag);

}

} catch (Exception e) {

e.printStackTrace();

} finally {

if (out != null) {

out.close();

}

}

}

二.spring + ajaxfileupload.js 實現不要表單異步上傳圖片

function uploadImage(fileId) {

$.ajaxFileUpload({

url:'/admin/article/addnewsp_w_picpaths',//用于文件上傳的服務器端請求地址

secureuri:false,//一般設置為false

fileElementId:fileId,//文件上傳空間的id屬性 ?

dataType: 'text',//返回值類型 一般設置為json

// data: {'faceurl':artType},擴展參數

success: function (data, status) ?//服務器成功響應處理函數

{

var fileInfo = jQuery.parseJSON(data);

alert("上傳成功,返回圖片路徑:"+fileInfo.file_path);

},

error: function(XMLHttpRequest, textStatus, errorThrown) {

alert(XMLHttpRequest.status);

alert(XMLHttpRequest.readyState);

alert(textStatus);

}

});

return false;

}

java---Controller

@ResponseBody

@RequestMapping(value = "article/addnewsp_w_picpaths", method = RequestMethod.POST,produces="application/json")

public Map ajaxNewsUplodImg(MultipartHttpServletRequest request, HttpServletResponse response) {

response.setContentType("text/plain; charset=utf-8");

Map result = new HashMap();

MultipartFile file = request.getFile("file");

try {

if (!file.isEmpty()){

String orgFileName = file.getOriginalFilename();

if (Digest.isAcceptedFileType(orgFileName)) {

result.put("file_path",具體上傳圖片工具方法);

} else {

response.setStatus(HttpStatus.UNSUPPORTED_MEDIA_TYPE.value());

}

} else {

response.setStatus(HttpStatus.UNPROCESSABLE_ENTITY.value());

}

} catch(Exception e) {

response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());

Logger.getLogger(ArticleController.class.getName()).log(Level.SEVERE, null, e);

}

return result;

}

總結

以上是生活随笔為你收集整理的jquery 上传图片 java_jquery 异步提交表单 上传图片小例子的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。