ajax 文件上传

function updateImage(o,id){
				var $this = o;
				var $form=createForm(id);
		        var $iframe=createIframe(id);
		        $($iframe.get(0).contentWindow.document.body).append($form);
		        
		        $($form.find("input[name=file]")).change(function(e){
		        	e.stopPropagation();
		            e.stopImmediatePropagation();
		            
		            if(this.files.length>0&&this.files[0]){
		            	var file=this.files[0];
		            	
		            	if(file.size>(1*1024*1024)){
		            		layer.msg("亲...您上传的文件大小不能超过1M!");
		                    return;
		                }
		            	
		                if(!/image\/(gif|png|jpeg|jpg)/.test(file.type)){
		                	layer.msg("亲...文件类型错误,仅支持GIF、JPG、PNG格式图片!");
		                    return;
		                }
		                
		                //提交
		                $form.submit();
		                isUploading=true;
		                
		                $iframe.get(0).οnlοad=function(e){
		                    var responseText=$(this.contentWindow.document.body).text();
		                    if(responseText){
		                        var responseObj=JSON.parse(responseText);
		                        if(responseObj.uploadImage=="success"){
		                        	$($this).data("buffer",responseObj);
		                        	var path = responseObj.relativePath;
		                        	var url = "$!webpath/printApplyController/showImage.htm?path="+path;
		                        	$($this).find("img").attr("src",url);
		                        	layer.msg("图片上传成功!");
		                        }else{
		                        	layer.msg("图片上传失败!");
		                        }
		                    }
		                    $form.remove();
		                    $iframe.remove();
		                    isUploading=false;
		               }
		            }
		        });
		        $form.find("input[name='file']").click();
			}
			
			function createForm(id){
			    var $fileUpload=$("body").find("form[name='form_"+id+"']");
			    if($fileUpload.length==0){
			        var uploadPath="$!webpath/printApplyController/uploadPrintApply.htm";
			        var form="<form name='form_"+id+"'  enctype='multipart/form-data' method='POST' action='"+uploadPath+"'>" +
			                 "<input type='file' name='file' style='display:none;' />" +
			                 "</form>";
			        $fileUpload=$(form)
			        $("body").append($fileUpload);
			    }
			    return $fileUpload;
			}
	
			function createIframe(id){
			    var $iframe=$("iframe[name='iframe_"+id+"']");
			   if($iframe.length==0){
			        var html="<iframe id=\"iframe_"+id+"\" name=\"iframe_"+id+"\" src=\"about:blank\" style='display:none;'></iframe>"
			        $iframe=$(html);
			        $("body").append($iframe);
			    } 
			    return $iframe;
			}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值