android ajax提交图片,ajaxFileUpload上传图片
jsp页面
input type="file" name="file" id="fn"οnchange="select_img();">
引用的js
jquery.ajaxfileupload.js
js代码
$(function () {
$('input[type=text]').validatebox();
});
function uploadP(id){
$("#uid").val(id);
$("#uploadpictrue").dialog("open");
}
function select_img() {
var id=$("#uid").val();
var value = $("#fn").val();
var ext = value.substring(value.lastIndexOf(".") + 1).toLowerCase();
if (ext == null
|| ext == ""
|| (ext != "jpg" && ext != "gif" && ext != "bmp" && ext != "jpeg" && ext != "png")) {
$.messager.alert("操作提示", "图片格式错误","info");
} else{
$.ajaxFileUpload({
url : "uploadImgFile.html?id="+id,
secureuri : false,// 一般设置为false
fileElementId : 'fn',// 文件上传空间的id属性
dataType : 'text',// 返回值类型 一般设置为json
success : function(data,status) // 服务器成功响应处理函数
{
var path=data.substring(8,data.length-3);
if(path=="fail1"){
$("#fn").val("");
$.messager.alert("操作提示", "文件超过4MB,请您重新上传","info");
}else{
$("#target").attr("src", getRootPath() + data);
$("#btnl").css("display","block");
$("#target").css("display","block");
}
},
error : function(data,status,e)// 服务器响应失败处理函数
{
$.messager.alert("操作提示", e,"info");
}
});
}
}
function getRootPath() {
// 获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
var curWwwPath = window.document.location.href;
// 获取主机地址之后的目录,如: uimcardprj/share/meun.jsp
var pathName = window.document.location.pathname;
var pos = curWwwPath.indexOf(pathName);
// 获取主机地址,如: http://localhost:8083
var localhostPaht = curWwwPath.substring(0, pos);
// 获取带"/"的项目名,如:/uimcardprj
var projectName = pathName
.substring(0, pathName.substr(1).indexOf('/') + 1);
return (localhostPaht + projectName) + "/";
}
后台代码
@SuppressWarnings("unchecked")
@RequestMapping(value = "/uploadImgFile.html")
public @ResponseBody void uploadImgFile(HttpServletRequest request,
HttpServletResponse response,
@RequestParam("file") MultipartFile file,int id)
throws Exception {
JSONObject jsonObject=new JSONObject();
//文件大小
double fileSizeDouble = get2Double(((double) file.getSize() / 1024) / 1024);
String fileSize = fileSizeDouble + "MB";
if (fileSizeDouble > 4.0) {
jsonObject.put("msg", "fail1");
//ResponseUtil.write(response, jsonObject);
}else {
String sql="from TabExpert te where te.expertid='"+id+"'";
TabExpert tabExpert=tabExpertSercive.getTabExpertListByHql(sql).get(0);
String msg="";
// 获取当期时间,作为文件名,避免重复
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
String fileTime = sdf.format(new Date());
String fileName = file.getOriginalFilename();
System.out.println(fileName);
String type = fileName.substring(fileName.lastIndexOf(".") + 1);
/*if (fileName.length() > 0) {
if (!type.equals("jpg") && !type.equals("bmp")
&& !type.equals("gif") && !type.equals("png")
&& !type.equals("jpeg")) {
jsonObject.put("msg","图片格式错误");
}
}else{
*/
// 上传的文件放在“realPath”目录下
String realPath1 = request.getSession().getServletContext()
.getRealPath("houtai/p_w_picpath/" + fileTime);
if ((new File(realPath1).isDirectory())) {
System.out.println("文件夹已存在!创建失败!");
} else {
new File(realPath1).mkdir();
System.out.println("创建文件夹成功!");
}
if (fileName.length() > 0) {
// 存入照片
FileUtils.copyInputStreamToFile(file.getInputStream(), new File(
realPath1, fileName));
// 相片路径
String realPath = realPath1 + "\\" + fileName;
System.out.println("========================================");
// 将文件名存入数据库
// realPath=realPath+"\\"+fileName;
int beginIndex = realPath.lastIndexOf("houtai");
realPath = realPath.substring(beginIndex, realPath.length());
tabExpert.setExt0(realPath.replace("\\", "/"));
tabExpert.setExt1(fileName);
try {
tabExpertSercive.updateTabExpert(tabExpert);
msg=tabExpert.getExt0();
ResponseUtil.write(response,msg);
jsonObject.put("msg",tabExpert.getExt0());
System.out.println(tabExpert.getExt0());
} catch (Exception e) {
// TODO: handle exception
jsonObject.put("msg", "上传失败!");
}
}
/*}*/
}
ResponseUtil.write(response, jsonObject);
}
android ajax提交图片,ajaxFileUpload上传图片相关推荐
- Ajax,ajaxFileUpload文件上传同步代码js实现
需求描述: 此功能模块是我写的一个项目中的[气瓶定检信息模块]中用到的一个技术,在添加气瓶定检信息数据的同时需要添加4张不同类型的图片,[大家都知道图片是不能直接存数据库的所以这里需要先上传图片获得图 ...
- android上传本地图片到服务器上,Android使用post方式上传图片到服务器的方法
本文实例讲述了Android使用post方式上传图片到服务器的方法.分享给大家供大家参考,具体如下: /** * 上传文件到服务器类 * * @author tom */ public class U ...
- android用上传图片到服务器上,Android使用post方式上传图片到服务器的方法
本文实例讲述了Android使用post方式上传图片到服务器的方法.分享给大家供大家参考,具体如下: /** * 上传文件到服务器类 * * @author tom */ public class U ...
- webapi实现AJAX多文件上传,AJAX调用webapi上传图片或文件
AJAX调用webapi上传图片或文件,并返回刚上传的文件名.废话不多说直接贴代码吧 html相关:html> Title function doUpload() { var formData ...
- Android中使用OKHttp上传图片,从相机和相册中获取图片并剪切
Android中使用OKHttp上传图片,从相机和相册中获取图片并剪切 效果: 注意: 1:网络权限 <uses-permission android:name="android.pe ...
- Android 选择图片、上传图片之ImagePicker
效果图: 后来又出了两篇,也可以看一下 Android 选择图片.上传图片之PictureSelector Android 选择图片.上传图片之Matisse 添加依赖: 选择图片:compile ' ...
- 使用ajax提交图片,提交已经注入文件的表单给后台上传图片 使用ajaxsubmit
使用jquery form插件进行异步带文件的表单提交 引入form插件与jquery 的js文件后 获取表单的jq对象 然后.ajaxSubmit提交表单即可 实现添加品牌的异步表单提交 funct ...
- 多个ajaxFileUpload上传图片与ajax合用,解决同步问题,用户随意上传多少图片都可以;
需求描述:因ajaxFileUpload 文件上传插件是异步请求,但是业务上需要先得到 ajaxFileUpload 请求后的图片url, 在通过ajax 把图片URL等其它需要录入的数据一并写入数据 ...
- 上传身份证照片js_Asp.Net MVC 中JS通过ajaxfileupload上传图片获取身份证姓名、生日、家庭住址等详细信息...
客户要求用身份证图片上传获取身份证的详细信息就下来研究了一下(现在的客户真的懒 身份证信息都懒得输入了哈哈...),经过慢慢研究,果然皇天不负有心人搞出来了.这个借助的是腾讯的一个SKD 腾讯优图云 ...
最新文章
- oracle 数据库开发应用实例,招生录取系统,oracle与plsql教程打包下载
- springboot 利用configureMessageConverters add FastJsonHttpMessageConverter 实现返回JSON值 null to ...
- 中单引号和双引号的区别与联系_VB中Sub与function的联系与区别
- python zipfile 文件压缩和文件
- 我是如何自学 Python 的,分享一下经验
- 如何删除office2007、以及安装新版本office
- 哈希表 哈希函数 时间_您需要了解的哈希函数
- 自动驾驶专题研究报告:自动驾驶产业链全梳理
- leetcode python3 简单题100. Same Tree
- aptana php 调试,aptana 3 + xdebug php
- mysql有rollup函数吗_MySQL-with rollup函数运用
- 大型文件传输,前后端分别怎么处理?
- android 微信 语音,安卓手机微信不能发语音的解决办法
- 10个超强英语学习资源网站,学霸们都在用!
- 图片alt标签是什么?如何优化Alt标签
- 两份重磅文件明确互联网平台分类分级,淘宝、微信、抖音等将迎“超级监管”...
- 玩了这么长时间抖音,这些功能你知道吗?做好这3个轻松月入过万
- 鸿蒙之至始于衣冠,学坊之声/Class Story | 孝老爱亲,我们这样做——双语303班蚂蚁学坊亲子活动...
- sdcard/DCIM/.thumbnails文件夹里的庞然大物 是这样来的
- 04 【CSS选择器 】