upload.js 文件图片上传

//isImgControl:缩略图片大小是否控制
//isYin:是否加水印
var isImgtemp;


function uploadImgControlAndYin(isControl){
	isImgtemp = isControl;
}

//上传商品图片工具,支持多张上传
function uploadGoodsImgMulti(){
	uploadComponent("uploadifyfile","uploadresult","fileQueue","goodsimages",true);
}


//上传一张图片工具,支持多张上传
function uploadOneImgMulti(){
	uploadComponent("uploadifyfile","uploadresult","fileQueue","image",true);
}

//上传一张图片工具
function uploadOneImg(){
	uploadImg("uploadifyfile","uploadresult","fileQueue");
}

//上传图片工具
function uploadImg(uploadifyfile,uploadresult,fileQueue){
	uploadComponent(uploadifyfile,uploadresult,fileQueue,"image",false);
}

//uploadifyfile:文件路径输入框的ID
//uploadresult:上传文件成功后的文件保存路径
//fileQueue:文件上传效果队列
//type:上传文件类型 image,file,flash
//multi:多文件上传 true,false
//isImgtemp:1: 控制缩略图;2:水印;123:控制缩略图+水印
function uploadComponent(uploadifyfile,uploadresult,fileQueue,type,multi){

	var paraString = '';
	if(isImgtemp != '' && isImgtemp=='1'){
		paraString +='?'+ 'isImgControl='+isImgtemp;
	}
	if(isImgtemp != '' && isImgtemp=='2'){
		paraString +='?'+ 'isYin='+isImgtemp;
	}
	if(isImgtemp != '' && isImgtemp=='123'){
		paraString +='?'+ 'isImgControl_isYin='+isImgtemp;
	}
	var upAction;
	var sizeLimit;
	var fileDesc;
	var fileExt;
	var bite=1024*1024;
	
	if(type == 'image'){
		upAction = '/uploadfy_executeUpimages.action'+paraString;
		sizeLimit = parseFloat($("#image_size").val())*bite;
		var ftype=$("#image_type").val();		
		fileDesc = '支持格式:'+ftype+".";
		var reg="\/";
		ftype=ftype.replace(new RegExp(reg,"gm"),";*.");
		fileExt="*."+ftype;
	}
	else if(type == 'file'){
		upAction = '/uploadfy_executeUpFile.action';
		sizeLimit = parseFloat($("#file_size").val())*bite;
		var ftype=$("#file_type").val();		
		fileDesc = '支持格式:'+ftype+".";
		var reg="\/";
		ftype=ftype.replace(new RegExp(reg,"gm"),";*.");
		fileExt="*."+ftype;
	}
	else if(type == 'flash'){
		upAction = '/uploadfy_executeUpFlash.action';
		sizeLimit = parseFloat($("#flash_size").val())*bite;
		var ftype=$("#flash_type").val();		
		fileDesc = '支持格式:'+ftype+".";
		var reg="\/";
		ftype=ftype.replace(new RegExp(reg,"gm"),";*.");
		fileExt="*."+ftype;
	}else if(type == 'goodsimages'){
		upAction = '/uploadfy_executeUpGoodsimages.action';
		sizeLimit = parseFloat($("#image_size").val())*bite;
		var ftype=$("#image_type").val();		
		fileDesc = '支持格式:'+ftype+".";
		var reg="\/";
		ftype=ftype.replace(new RegExp(reg,"gm"),";*.");
		fileExt="*."+ftype;
	}
    
    var imagepath="/include/components/upload";
	$("#"+uploadifyfile).uploadify({
          'uploader'       : imagepath+'/uploadify.swf',//控制弹出选择文件框
          'script'         : upAction,//执行的xx.action
          'cancelImg'      :imagepath+'/cancel.png',//选择文件到文件队列中后的每一个文件上的关闭按钮图标
          'folder'         : 'uploadifyfile',//上传文件存放的目录 。
          'queueID'        : fileQueue,//文件队列的ID,该ID与存放文件队列的div的ID一致。
          'auto'           : true,//是否自动上传图片
          'multi'          : multi,//是否支持多上传
          'sizeLimit'      : sizeLimit,//上传文件的大小限制 。
          'displayData'    : 'speed',//有speed和percentage两种,一个显示速度,一个显示完成百分比
          'fileDesc'       : fileDesc, //这个属性值必须设置fileExt属性后才有效,用来设置选择文件对话框中的提示文本,如设置fileDesc为“请选择rar doc pdf文件”,打开文件选择框效果
          'simUploadLimit' : 2,//支持同时上传图片的个数
          'fileExt'        : fileExt,//设置可以选择的文件的类型,格式如:'*.doc;*.pdf;*.rar' 。
          'buttonText'     : 'Browser',//浏览按钮的文本,默认值:BROWSE 。
          'fileDataName'   : 'uploadifyfile',  //设置一个名字,在服务器处理程序中根据该名字来取上传文件的数据。默认为Filedata
          'height'         : 20,  //设置浏览按钮的高度 ,默认值:30。
		  'width'          : 60,   //设置浏览按钮的宽度 ,默认值:110。
		  'buttonImg'      : imagepath+'/upload.jpg',  //浏览按钮的图片的路径 。只要是用解决按钮文字显示不支持中文的办法
		  'wmode'          : 'transparent',//设置该项为transparent 可以使浏览按钮的flash背景文件透明,并且flash文件会被置为页面的最高层。 默认值:opaque 。
          'onComplete'     : function (event, queueID, fileObj, response, data){ 
             if(multi==true)//判断是否为多上上传图片
             {
             	 $("#"+uploadresult).val(addMultiImageUrl(uploadresult,response));//显示上传成功结果 
             	 var resultImg=$("#"+uploadresult).val();
             	 if(resultImg.lastIndexOf(",")>-1){
             	    var lastImgLength=resultImg.lastIndexOf(",");             	    
             	    resultImg=resultImg.substring(0,lastImgLength);
             	    $("#"+uploadresult).val(resultImg);
             	 }             	 
             }
             else
             {
             
          	 	if(endWith(response,",")){
          	 		response = response.substring(0,response.length-1);
          	 	}
             	$("#"+uploadresult).val(response);//显示上传成功结果      
             }    
          }
    });
}
//处理多图片上传的时候图片路径的添加
function addMultiImageUrl(uploadresult,responses)
{
 var myresult=$("#"+uploadresult).val();
  if(responses.length==0)
   {
      myresult="";
      alert("请上传图片");
   }
  else
   {
      var len=myresult.length;
      var endstring=myresult.substring(len-1,len);
      if(endstring !=","&& myresult!="")
        {
           myresult=myresult+",";
        }
        myresult += responses+',';        
   }
  return myresult;
}
//判断字符串是否是以某个字符结尾
function endWith(s1,s2)  
{  
	if(s1.length<s2.length)
		return	false;
	if(s1==s2)
		return	true;
	if(s1.substring(s1.length-s2.length)==s2)
		return	true;
	return	false;
}




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值