9159金沙游艺场-奥门金沙游艺场-[欢迎您]

9159金沙游艺场为您呈现最新的面貌!,目前注册送体验金,欢迎您将成为影视娱乐行业新的风向标,是亚洲的优质娱乐先锋。

ajaxfileupload上传文件

日期:2019-11-18编辑作者:办公软件

Jquery+ajaxfileupload上传文件,ajaxfileupload

1、说明

  ajaxfileupload.js是一款jQuery插件,用于通过ajax上传文件。

  下载地址:

2、使用方法

  首先引用js脚本

    <script src="Scripts/jquery/jquery-1.9.1.js" type="text/javascript"></script>
    <script src="Scripts/ajaxfileupload.js" type="text/javascript"></script>

 

    <script type="text/javascript">
        $(function () {
            $("#btnUpload").on('click', DoUpload);
        })

        function DoUpload() {
            var image = $("#txtPath").val();
            if ($.trim(image) == "") {
                alert("请选择文件!");
                return;
            }

            $.ajaxFileUpload(
            {
                url: 'Handler/FileUploadHandler.ashx?type=Attachment', 
                secureuri: false, 
                fileElementId: $("#fleFile").attr("id"), 
                dataType: 'json',
                success: function (data, status) 
                {
                    if (data.url === "") {
                        alert("上传失败!");
                    } else {
                        alert("上传成功!");
                    }
                },
                error: function (result) {
                    alert("上传失败!");
                }
            });
        }
    </script>

  然后是html代码

    <div id="ImageMaintain">
        <input type="hidden" name="hidImgUrl" id="hidImgUrl" value="" />
        <div id="uploadarea">
            <input id="txtPath" type="text" disabled="disabled" />
            <input id="fleFile" type="file" name="fleFile" onchange="document.getElementById('txtPath').value = this.value;return false;" />
            <input id="btnSelect" type="button" value="选择" class="button"><%@ WebHandler Language="C#" Class="FileUploadHandler" %>

using System;
using System.Web;
using System.IO;

public class FileUploadHandler : IHttpHandler {

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";

        string strMessage = string.Empty;
        string strUrl = string.Empty;
        string strFloderName = "Upload";
        string strNewFilePath = string.Empty;
        string strFileName = Path.GetFileName(context.Request.Files[0].FileName);
        string strOldFileName = Path.GetFileName(context.Request.Files[0].FileName); 
        int intFileSize = context.Request.Files[0].ContentLength;
        string data = "";
        if (context.Request.Files.Count > 0 && strFileName != "")
        {
            string strExt = Path.GetExtension(context.Request.Files[0].FileName);
            strExt = strExt.TrimStart('.').ToLower();
            strFloderName = strFloderName + "/" + "File/" + DateTime.Now.ToString("yyyyMMdd");
            string path = HttpContext.Current.Server.MapPath("../" + strFloderName);
            try
            {
                strFileName = Guid.NewGuid().ToString() + ("." + strExt);
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }
                strNewFilePath = Path.Combine(path, strFileName);
                context.Request.Files[0].SaveAs(strNewFilePath);
            }
            catch (Exception ex)
            {
                strMessage = "保存失败";
                strUrl = string.Empty;
            }
        }
        strMessage = "";
        strUrl = strFloderName + "/" + strFileName;

        data = "{"strUrl":"" + strUrl + "","strMessage":"" + strMessage + ""}";
        context.Response.Write(data);
        context.Response.End();
    }

    public bool IsReusable {
        get {
            return false;
        }
    }

}

 3、图片上传

  这里会把DEMO上传至博客园,下载地址:

特别注意:这里需要提醒一下各位,默认情况下可上传的最大文件为4M,如果要上传大于4M文件,那么需要在web.config中的httpRuntime元素中添加maxRequestLength属性设置大小,同时为了支持大文件上传超时可以添加executionTimeout属性设置超时时间

<httpRuntime useFullyQualifiedRedirectUrl="true" executionTimeout="120" maxRequestLength="20480"/> 20480=20M

 

1、说明 ajaxfileupload.js是一款jQuery插件,用于通过ajax上传文件。 下载地址:...

本文由9159金沙游艺场-奥门金沙游艺场-[欢迎您]发布于办公软件,转载请注明出处:ajaxfileupload上传文件

关键词:

shell命令的六种方法详解

Ruby中执行Linux shell命令的六种方法详解,rubyshell 在Ruby中,执行shell命令是一件不奇怪的事情,Ruby提供了大概6种方法...

详细>>

Ajax方式上传文件的方法【9159金沙游艺场】

jQuery Ajax方式上传文件的方法,jqueryajax jQuery Ajax方式上传文件用到两个对象 第一个对象:FormData 第二个对象:XMLHtt...

详细>>

javascript正则表达式

如何用javascript正则表达式验证身份证号码是否合法,javascript正则表达式 在用户注册页面有些需求要求的比较严格,...

详细>>

ObjectARX自定义实体的最近点和垂点捕捉算法9159金

ObjectARX自定义实体的最近点和垂点捕捉算法,objectarx实体  最近点用pickPoint来计算,垂点用lastPoint计算. 一般AcDbCurve类...

详细>>