1. 程式人生 > >Javascript與asp.net 實現Ajax多檔案無重新整理上傳

Javascript與asp.net 實現Ajax多檔案無重新整理上傳

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>AjaxUpload</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><script type="text/javascript"
 src="scripts/jquery.js"></script><script type="text/javascript" src="scripts/interface.js"></script><style type="text/css" media="all">
*
{
    margin
:0;
    padding
:0;}

img
{border:none;}

ul
{
    list-style-type
:none;}

ul li
{
    padding
:2px 4px;}

body
{
    font-family
: 宋體, 黑體,verdana, Arial
;
    font-size
:12px;
    color
:#333;
    background
:#DDDDDD;
    margin
:30px;
    padding
:0;}

.box
{
    border
:1px solid #CCC;
    background
:#FFF;
    padding
:8px;
    margin
:5px;
    clear
:both;}

.title 
{
    background
:#F0F0F0;padding:5px;
    font-weight
:bold;}

.tooltip
{
    background
:#F0F0F0;
    border-color
:#bbb;}

.tooltip h1 
{
    color
:#A8DF00;
    font-family
: 微軟雅黑,黑體,宋體,verdana, Arial;}

.titlebutton
{
    float
:right;}

.uploading
{
    background
:#FFF;
    color
:#444;
    text-align
:left;
    width
:500px;
    padding
:4px;}

.image
{
    border
:1px solid #ddd;
    margin
:2px;
    padding
:1px;
    display
:inline;
    width
:300px;}

.uploadcontrol 
{
    margin
:4px 0;
    border-bottom
:1px solid #F0F0F0;}</style><script type="text/javascript">
    
     $(document).ready(
function(){          
          
for(var i=0;i<5;i++)
          {
             uploadcreate($(
"#uploadbox"),i);
          }
    });
     
     
var hideDiv =function(idName){
         $(
"#"+idName).fadeOut("fast");
     };
     
     
//是否顯示上傳後的圖片var isshowpic =true;  
     
var uploadshowpic =function(el){
         isshowpic 
=!(isshowpic);
         
if(isshowpic)
         {
             el.html(
"圖片顯示關閉");
         }
         
else
         {
             el.html(
"圖片顯示開啟");
         }
     };
     
     
//載入中的GIF動畫var loadingUrl ="images/ajax-loader.gif";
    
    
//選擇檔案後的事件,iframe裡面呼叫的var uploading =function(imgsrc,itemid){
        
var el = $("#uploading"+itemid);
        $(
"#ifUpload"+itemid).fadeOut("fast");
        el.fadeIn(
"fast");
        el.html(
"<img src='"+loadingUrl+"' align='absmiddle' /> 上傳中");
        
return el;
    };
    
    
//重新上傳方法    var uploadinit =function(itemid){
        currentItemID 
++;
        $(
"#uploading"+itemid).fadeOut("fast",function(){
             $(
"#ifUpload"+itemid).fadeIn("fast");
             $(
"#panelViewPic"+itemid).fadeOut("fast");
        });
               
    };
    
    
//上傳時程式發生錯誤時,給提示,並返回上傳狀態var uploaderror =function(itemid){
        alert(
"程式異常,"+itemid+"項上傳未成功。");
        uploadinit();
    };
    
    
//上傳成功後的處理var uploadsuccess =function(newpath,itemid){
        $(
"#uploading"+itemid).html("檔案上傳成功. <a href='javascript:void(0);' onclick='uploadinit("+itemid+");'>[重新上傳]</a>");
        
if(isshowpic)
        {
            $(
"#panelViewPic"+itemid).html("<a href='"+newpath+"' title='點選檢視大圖' target='_blank'><img src='"+newpath+"' alt='' style='width:300px;' /></a>");        
            $(
"#panelViewPic"+itemid).fadeIn("fast");
        }
    };
    
    
    
var currentItemID =0;  //用於存放共有多少個上傳控制元件了//建立一個上傳控制元件var uploadcreate =function(el,itemid){
        currentItemID 
++;
        
if(itemid ==null)
        {
            itemid 
= currentItemID;
        }  
        
var strContent ="<div class='uploadcontrol'><iframe src=/"upload.aspx?id="+itemid+"/" id=/"ifUpload"+itemid+"/" frameborder=/"no/" scrolling=/"no/" style=/"width:400px; height:28px;/"></iframe>";
        strContent 
+="<div class=/"uploading/" id=/"uploading"+itemid+"/" style=/"display:none;/" ></div>";
        strContent 
+="<div class=/"image/" id=/"panelViewPic"+itemid+"/" style=/"display:none;/"></div></div>";
        el.append(strContent);
    };
     
</script></head><body><div id="tipbox" class="box tooltip"><href="#" onclick="hideDiv('tipbox');">[關閉]</a><div class="content"><h1>AjaxUpload - 多檔案無重新整理上傳原始碼 v1.0</h1><p>作者:李華順 <href="http://huacn.cnblogs.com" target="_blank">http://huacn.cnblogs.com</a></p></div></div><div id="toolbox" class="tooltip box"><href="#" onclick="uploadcreate($('#uploadbox'));">新增一個新上傳控制元件</a><href="#" onclick="uploadshowpic($(this));">圖片顯示關閉</a></div><div id="uploadbox" class="box"></div></body></html>

相關推薦

Javascriptasp.net 實現Ajax檔案重新整理

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w

jquery ajax 檔案Excel解析

------jsp 前臺-------------------- <form  id="importOrderFrom" name="importOrderFrom"  method="post" enctype="multipart/form-data">&nb

模仿Ajax的動態重新整理檔案

使用到的jar檔案:commons-fileupload-1.3.jar,commons-io-2.4.jar jsp頁面: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

Struts2+Ajax+Jquery的重新整理圖片

####備註:這裡不詳細講解Struts2的檔案上傳知識點,想了解請點選我另外一篇文章 http://blog.csdn.net/qq_25281057/article/details/52333677 ###這裡我引用了兩個js檔案,一個Jquery和一個form表單

C# Asp.net使用FormData對象實現ajax提交表單及圖片

sync ext syn data .... error post req 序列化 1、html代碼: <form id="postForm"> 文件名:<input type="text" name="filename" />

JavascriptASP.NET(一般處理程式)關於URL(get方式)傳遞中文亂碼問題的解決方案

一、首先,說一下我要實現的功能 根據老師ID、學年、學期,查詢該教師教授的課程資訊。 二、傳遞引數我遇到的問題:     我通過傳遞教師ID、學年和學期從資料庫查詢出該教師所教的課程資訊,展現在介面上,從資料庫我能查詢出資料,為什麼在介面不出資料呢,我斷點除錯,發現這

asp.net 使用ckfinder 不彈窗直接圖片、檔案

步驟一:複製QuickUploadCommandHandler.cs,比如複製出重新命名為LwjUploadCommandHandler.cs 修改類名,以及構造。 將GetJavaScriptCode修改成下面程式碼: protected override string

ajaxfileupload.js外掛結合一般處理檔案實現Ajax重新整理

先上幾張圖更直觀展示一下要實現的功能,本功能主要通過Jquery ajaxfileupload.js外掛結合ajaxUpFile.ashx一般應用程式處理檔案實現Ajax無重新整理上傳功能,結合NPOI2.0實現資料讀取。這個功能在實際工作種經常用到,希望能

jQuery+php+ajax實現重新整理檔案功能

jQuery+php+ajax實現無重新整理上傳檔案功能,還帶有上傳進度條動畫效果,支援圖片、視訊等大檔案上傳。 js程式碼

ASP.NET 使用ajaxupload.js插件出現較大文件失敗的解決方法

linu inf asp ctu idc code oca ace 去百度 在網上下載了一個ajaxupload.js插件,用於無刷新上傳圖片使的,然後就按照demo的例子去運行了一下,上傳啊什麽的都OK,但是正好上傳的示例圖片有一個比較大的,4M,5M的樣子,然後上傳就會

基於jQuery的ajax系列之用FormData實現頁面重新整理

接著上一篇ajax系列之用jQuery的ajax方法向伺服器發出get和post請求寫,這篇主要寫如何利用ajax和FormData實現頁面無重新整理的檔案上傳效果,主要用到了jQuery的ajax()方法和XMLHttpRequest Level 2的FormData介面。

檔案預覽基於Struts

多檔案預覽上傳基於Struts 實現多檔案預覽,多檔案上傳,基於struts,使用jquery實現,邏輯簡單轉化為js等方便。 頁面程式碼 <html> <head> <link href="../../css/style.css

asp.net使用百度的webuploader批量圖片

各位想必是在百度下載webuploader後,看官方的demo並沒有看明白才搜到這裡來的吧。 我也是,我將搜尋的結果做了整理,大家互相學習進步。 下載下來的是一個php的寫的,asp.net的伺服器端得自己重新寫一個服務,將下載的程式碼進行如下修改(這裡使用的是dem

使用七牛介面實現圖片和檔案一鍵

本文主要介紹使用七牛提供的介面把七牛雲作為圖床,用 Python 實現圖片上傳和檔案上傳的指令碼實現,可以支援按資料夾批量上傳。 搭建過網站的同學,一定都涉及到圖片上傳和檔案上傳的問題,最近為了弄圖片資源接觸了一下雲端儲存,還挺挺好用。 之前如果我們把圖片資

form+iframe實現重新整理檔案

原理: 利用form的target屬性,將form的action在iframe中開啟,並接收返回結果,實現仿ajax的頁面無重新整理檔案上傳。 正是action在iframe中開啟,所以,頁面才會無重

ajax頁面重新整理檔案

最近在研究struts2檔案上傳,感覺這塊無論是做企業網站還是做系統都用的挺多的,尤其是圖片上傳。但是上傳我們又有幾種方式,一種是表單提交,一種是ajax無重新整理上傳。 這次我要介紹的就是struts2+ajax無重新整理上傳圖片,將圖片儲存在本地,圖片將以

通過Ajax使用FormData物件重新整理檔案

寫在前面:本文說的這個方案有瀏覽器相容性問題;所有主流瀏覽器的較新版本已經支援這個物件了,比如Chrome 7+、Firefox 4+、IE 10+、Opera 12+、Safari 5+,對相容性比較敏感的網站慎用。 在工作中遇到了一個問題:在一個頁面中,有4塊內容

如何使用ajax實現重新整理

詳細程式碼如下 9.upload.html <!DOCTYPE HTML> <html> <head> <meta http-equiv="Cont

使用百度webuploader外掛進行檔案型別分片例項

jQuery(function() { function e(e) { var a = o('<li id="' + e.id + '"><p class="title">' + e.name + '</p><p cl

利用js實現重新整理頭像(或檔案)並顯示進度條

無重新整理上傳原理:現在我們利用新技術FormData表單資料物件可以實現快速收集表單資訊,普通表單域 和 上傳檔案域 均可以收集,再結合ajax就可以實現無重新整理上傳。 那麼怎樣顯示進度條呢?原來ajax物件有upload成員,該成員也是物件,構造器是XMLHttpR