天天看點

uploadify和greybox插件的使用

在寫代碼之前,先将uploadify和grebox的插件拷貝到項目裡面

uploadify和greybox插件的使用

不用說,讓我們先看看代碼和效果

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Uploadify</title>
<link href="css/default.css" target="_blank" rel="external nofollow"  rel="stylesheet" type="text/css" />
        <link href="css/uploadify.css" target="_blank" rel="external nofollow"  rel="stylesheet" type="text/css" />
        <link href="greybox/gb_styles.css" target="_blank" rel="external nofollow"  rel="stylesheet" type="text/css" />
		<link rel="stylesheet" href="css/style.css" target="_blank" rel="external nofollow" >
		<script type="text/javascript">
		    var GB_ROOT_DIR = "greybox/";
		</script>
		<script type="text/javascript" src="greybox/AJS.js"></script>
		<script type="text/javascript" src="greybox/AJS_fx.js"></script>
		<script type="text/javascript" src="greybox/gb_scripts.js"></script>
        <script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
        <script type="text/javascript" src="js/swfobject.js"></script>
        <script type="text/javascript" src="js/jquery.uploadify.v2.1.0.js"></script>
<script type="text/javascript">
	$(document).ready(function() {
		showPictures();
		$("#uploadify").uploadify({
			'uploader' : 'uploadify.swf', //指定上傳控件的主體檔案
			'script' : 'servlet/Upload?action=insertImage',//指定伺服器端上傳處理檔案
			'cancelImg' : 'images/cancel.png',//指定取消上傳的圖檔
			//'folder'         : 'uploads',    //您想将檔案儲存到的路徑
			'queueID' : 'fileQueue', //隊列
			'auto' : false, //標明檔案後是否自動上傳
			'multi' : true, //是否允許同時上傳多個檔案
			'simUploadLimit' : 2, //多檔案上傳時,同時上傳檔案數目限制
			'buttonText' : 'BROWSE' //按鈕顯示文字,不支援中文,要用中文直接用背景圖檔cancelImg設定
		});
	});
	
    //添加一行
	 function addRow()
	    {
	    //添加一行
	    var newTr = testTbl.insertRow();
	    return newTr;
	    }
    //添加一列
	function addImage(newTr,image){
		var newTd1 = newTr.insertCell();
	    newTd1.innerHTML =  "<a href= " +image + " title='操哥要改的地方' rel='gb_imageset[photos]'> <img src=" +image + " width='100' height='120'> </a>";
	}
    //加載資料庫中圖檔的路徑
    function getLoadImage(){
    	var result;
    	 $.ajax({
    		 async:false,
             type: "POST",
             url: "servlet/Upload",
             data:{action:'getAllImage'}, 
             dataType: "json",
             success: function(data){
            	 result=data;//從背景取到資料
            	 
             }
         });
    	 return result;
    }
    function showPictures(){
    	var result=getLoadImage();
    	 var jsObject = eval(result);    //轉換為json對象
      	  var total = jsObject.length;  //擷取所有圖檔的總記錄數
      	  var totalRows = total/10; //擷取一共多少行
      	  var newtree = new Array();  //行定義為數組
   		  for(var i=0;i<totalRows;i++){  //建立行,并為行指派
   			 newtree[i] = addRow();
   		      }
   		    for(var i=0;i<totalRows;i++){
   		    	for(var j=0;j<10;j++){
   		    		var jj = i*10 + j;
   		    		addImage(newtree[i],jsObject[jj]);
   		    	}
   		    }
    }
</script>
</head>
<body>
	<div id="fileQueue"></div>
	<input type="file" name="uploadify" id="uploadify" />
	<p>
		<a href="javascript:jQuery('#uploadify').uploadifyUpload()" target="_blank" rel="external nofollow" >開始上傳</a> 
		<a href="javascript:jQuery('#uploadify').uploadifyClearQueue()" target="_blank" rel="external nofollow" >取消所有上傳</a>
	</p>
	<table id="testTbl"></table>
</body>
</html>
           
uploadify和greybox插件的使用
uploadify和greybox插件的使用

一開始,在擷取json資料源的時候,我直接在那個success裡面執行了shoupicture函數,但是始終不會出現我要的第二張圖檔的效果,最後把json資料傳回出來,但是在傳回json資料的時候,又遇到了一些小問題,要注意傳回資料的地方。

繼續閱讀