`
billxiatian
  • 浏览: 26004 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

AJAX图片上传

 
阅读更多

 

异步上传图片,并加载在jsp页面上

 

   JavaScript

 

	    function uploadPic() {  
	        // 上传设置  
	        var options = {  
	                // 规定把请求发送到那个URL  
	                url: "${webRoot}/dataCheck/uploadPic.do",  
	                // 请求方式  
	                type: "post",  
	                // 服务器响应的数据类型  
	                dataType: "json",  
	                // 请求成功时执行的回调函数  
	                success: function(data, status, xhr) {  
	                    // 图片显示地址  
	                    $("#allUrl").attr("src", "${webRoot}/"+data.path);  
	                    $("#dealImgURL").attr("value", data.path);  
	                }  
	        };  
	        $("#jvForm").ajaxSubmit(options);  
	    }  

 

 HTML

<input class="cs-hide" type="text" name="dataUnqualifiedTreatment.dealImgurl" id="dealImgURL"/>
 
    <td width="80%">  
		<img width="100" height="100" id="allUrl" class="preview"/>  
	        <!-- 在选择图片的时候添加事件,触发Ajax异步上传 -->  
		<input name="pic" type="file" onchange="uploadPic()"/>  
     </td>  

 

后台action(control)

    /** 
     * 使用Ajax异步上传图片 
     *  
     * @param pic 封装图片对象 
     * @param request 
     * @param response 
     * @throws IOException  
     * @throws IllegalStateException  
     */  
    @RequestMapping("/uploadPic")  
    public void uploadPic(MultipartFile pic, HttpServletRequest request, HttpServletResponse response) throws IllegalStateException, IOException {  
  
        try {  
            // 获取图片原始文件名  
            String originalFilename = pic.getOriginalFilename();  
            System.out.println(originalFilename);  
          
            // 文件名使用当前时间
            String name = new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date());  
          
            // 获取上传图片的扩展名
            String extension = FilenameUtils.getExtension(originalFilename);  
              
            // 图片上传的相对路径(因为相对路径放到页面上就可以显示图片)  
            String path = "/img/dataCheck/" + name + "." + extension;  
                        
            // 图片上传的绝对路径  
            String url = request.getSession().getServletContext().getRealPath("") + path;  
          
            File dir = new File(url);
            
            if(!dir.exists()) {  
            	dir.mkdirs();  
            }  
              
            // 上传图片  
            pic.transferTo(new File(url));  
          
            // 将相对路径写回(json格式)  
            JSONObject jsonObject = new JSONObject();  
            // 将图片上传到本地  
            jsonObject.put("path", path);  
            
            // 设置响应数据的类型json  
            response.setContentType("application/json; charset=utf-8");  
            // 写回  
            response.getWriter().write(jsonObject.toString());  
  
        } catch (Exception e) {  
            throw new RuntimeException("上传图片失败");  
        }  
    }  

 

 

分享到:
评论

相关推荐

    jsp Ajax图片上传

    这个“jsp Ajax图片上传”项目涉及到的关键技术包括客户端的JavaScript处理、服务器端的Java后端以及利用Ajax进行无刷新的数据交换。 一、Ajax基础 Ajax的核心是能够在不重新加载整个网页的情况下更新部分网页内容...

    ajax图片上传

    Ajax图片上传技术是一种在网页上实现用户无需刷新页面即可完成图片上传的功能,广泛应用于个人头像更新、在线相册上传等场景。这种技术基于Ajax(Asynchronous JavaScript and XML)和JavaScript,结合HTML与CSS,...

    PHP+ajax图片上传的简单实现

    PHP+ajax图片上传的简单实现。 使用js实现ajax,PHP上传图片成功以后返回图片的路径(弹窗出来)。 参考文档:http://blog.csdn.net/u014175572/article/details/51062856

    ajax图片上传插件

    Ajax图片上传插件是一种在网页上实现异步图片上传功能的技术解决方案。它通过Ajax(Asynchronous JavaScript and XML)技术,允许用户在不刷新整个页面的情况下,将图片数据发送到服务器进行处理,极大地提升了用户...

    php ajax图片上传

    以上就是一个简单的PHP和AJAX图片上传系统的基本结构。在实际应用中,你可能还需要添加错误处理、进度条显示、文件名检查等功能,以提高用户体验和安全性。记得在生产环境中,对文件上传进行严格的限制和过滤,防止...

    struts2 ajax图片上传

    在Struts2中实现Ajax图片上传功能,可以帮助用户在不刷新整个页面的情况下提交图片,提高用户体验。Ajax技术利用JavaScript的XMLHttpRequest对象与服务器进行异步数据交换,使得网页部分更新成为可能。 首先,我们...

    ajax图片上传 ajaxPHPdemo图片异步上传

    在Web开发中,图片上传是一项常见的功能,尤其是在社交媒体、电子商务网站和内容管理系统中。...这个提供的"ajax图片上传"示例可以帮助开发者快速入门,但实际应用中还需根据项目需求进行调整和优化。

    PHP Ajax图片上传

    在本场景中,"PHP Ajax图片上传"是指利用PHP后端处理和Ajax前端异步通信来实现图片的无刷新上传功能。下面我们将详细探讨这个话题。 首先,PHP是一种广泛使用的服务器端脚本语言,尤其在Web开发领域中占有重要地位...

    Ajax图片上传带缩略图源码

    Ajax图片上传带缩略图源码 程序带有图片上传 综合管理(添加 删除 图片配备文字信息) 数据库为SQL2005 放置在DB文件夹下 ------------------------------------分割线-------------------------------------- 问题...

    ajax图片上传源码

    【标题】"Ajax图片上传源码"涉及到的技术和知识点主要包括Ajax、JavaScript、前端交互以及后台处理等关键领域。Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术...

    ajax图片上传 包含切图等效果 php版

    总结起来,"ajax图片上传 包含切图等效果 php版"项目涵盖了前端交互、Ajax通信、服务器端处理和图片处理等多个技术点,对于提升网站用户体验和功能完善具有重要意义。在实际开发中,开发者需要结合具体业务需求,...

    仿163无刷新ajax图片上传源代码

    "仿163无刷新ajax图片上传源代码"就是一种实现了这种功能的应用,让用户在上传图片时无需等待页面刷新,提高用户体验。 1. **Ajax图片上传原理** Ajax图片上传主要通过JavaScript监听文件选择事件,当用户选择图片...

    Jquery Ajax 图片上传

    在本文中,我们将深入探讨如何使用jQuery AJAX实现图片上传功能,同时结合无刷新预览和加载指示器(Loading)效果。 一、jQuery AJAX基础 在使用jQuery AJAX进行图片上传之前,我们需要了解其基本概念。AJAX代表...

    struts2+ajax图片上传

    在“Struts2+Ajax图片上传”这个主题中,我们将探讨如何结合这两者实现用户友好的、异步的图片上传功能。 1. **Struts2框架基础**: - Struts2的核心是Action,它是业务逻辑的载体,负责处理用户的请求。 - ...

    [php]ifame仿ajax图片上传预览,兼容IE\FF\Chrome

    本项目 "[php]ifame仿ajax图片上传预览,兼容IE\FF\Chrome" 提供了一种利用iframe技术实现跨浏览器兼容的图片上传预览方案。以下是关于这个项目的一些关键知识点和详细说明: 1. **Iframe(内联框架)**:Iframe是一...

Global site tag (gtag.js) - Google Analytics