时间:2021-07-01 10:21:17 帮助过:4人阅读
1. 直接上最简单的 一种 ajax 异步上传图片,并预览
html:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>图片上传 | cookie</title>
</head>
<body>
file: <input type="file" id="images" name="image" /><br><br>
desc: <input type="text" id="desc" name="desc" /><br><br>
<input type="button" value="upload" onclick="upload();">
<p class="images"></p>
<script type="text/javascript" src="js/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="js/upload.js"></script>
<script type="text/javascript">
function upload() {
$.ajaxFileUpload({
url : 'upload.htm',
fileElementId : 'images',
dataType : 'json',
data : {desc : $("#desc").val()},
success : function(data) {
var html = $(".images").html();
html += '<img width="100" height="100" src="/HotelManager/upload/' + data.url + '">'
$(".images").html(html);
}
})
return false;
}
</script>
</body>
</html>servlet:
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
DiskFileItemFactory factory = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(factory);
String path = request.getServletContext().getRealPath("/upload");
String name = null;
try {
List<FileItem> items = upload.parseRequest(request);
for (FileItem item : items) {
if(item.isFormField()){
System.out.println(item.getFieldName() + ": " + item.getString());
} else {
name = item.getName();
item.write(new File(path,name));
}
}
PrintWriter out = response.getWriter();
out.print("{");
out.print("url:\"" + name +"\"");
out.print("}");
} catch (Exception e) {
e.printStackTrace();
}
}相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
推荐阅读:
ajax怎样提交form表单与实现文件上传
ajax后台success上传的json数据如何处理
以上就是Ajax上传并预览图片(附代码)的详细内容,更多请关注Gxl网其它相关文章!