1. asp上传文件控件

<asp:FileUpload ID="fpUploadFile" runat="server" onChange="onFileChange()" />
//文件上傳改變事件
function onFileChange() {
    var file = document.getElementById("fpUploadFile");
    var uploadFileName = file.value;
    var fileExp = uploadFileName.substring(uploadFileName.lastIndexOf(".") + 1).toLowerCase();
    
    //检验文件格式
    if (fileExp!= "xls") {
        alert("請上傳xls文件!");
    }
};

后端(.cs文件)保存上传文件


UploadFile(this.fpUploadFile, "E:/xxxxx.xls");
#region 保存上傳文件
/// <summary>
/// 保存上傳文件
/// </summary>
/// <param name="fileUpload">上傳文件控件</param>
/// <param name="saveFilePath">保存文件路勁</param>
/// <returns></returns>
private void UploadFile(FileUpload fileUpload, string saveFilePath)
{
    try
    {
        if (fileUpload.HasFile)
        {
            string parentDir = Path.GetDirectoryName(saveFilePath);

            if (!Directory.Exists(Server.MapPath(parentDir)))
                Directory.CreateDirectory(Server.MapPath(parentDir));

            fileUpload.SaveAs(saveFilePath);
        }
    }
    catch (Exception Err)
    {
        throw Err;
    }
}
#endregion

2. 前后端分离时,上传文件

<input type="file" id="txtFile" onchange="onFileChange()" />
//文件上傳改變事件
function onFileChange() {
    var file = document.getElementById("txtFile");
    if (file) {
        var uploadFileName = file.value;
        var fileExp = uploadFileName.substring(uploadFileName.lastIndexOf(".") + 1).toLowerCase();
        //上傳的文件格式
        var exp = filePath.substring(filePath.lastIndexOf(".") + 1).toLowerCase();

        //检验文件格式
        if (exp != "xls" && exp != "xlsx") {
            alert("請上傳xls或xlsx文件!");
            return false;
        }

        var formData = new FormData();
        formData.append("file", file.files);

        $.ajax({
            type: "POST",
            url: "url",
            data: formData,
            processData: false,
            contentType: false,
            async: false,
            cache: false,
            success: function (res) {
            },
            error: function (res) {
                alert("文件上傳失敗!");
            }
        });
    }
};

 ashx保存上传文件

//處理上傳文件
private void UploadFile()
{
    if (this.context.Request.Files != null && this.context.Request.Files.Count > 0)
    {
        HttpPostedFile file = this.context.Request.Files[0];
        
        string saveDir = "E:/aaaaa";
        string saveFilePath = string.Format("{0}/{1}", saveDir, file.FileName);

        //創建文件目錄
        if (!Directory.Exists(saveDir))
            Directory.CreateDirectory(saveDir);
        
        //保存文件
        file.SaveAs(saveFilePath);
    }
}

3.扩展ext.js的上传文件控件

{
    fieldLabel: "选择文件",
    xtype: "textfield",
    inputType: "file",
    id: "extUploadFile",
    name: "extUploadFile",
    width: 250,
    labelWidth: 70,
    labelAlign: 'right',
    listeners: { 
        render: function () {
            Ext.fly(this.el).on('mousedown', function (event, inputEl) {
                //alert("xxxxxx");
                //return false;
            });
        },
        change: onFileChange 
    }
}

 

posted on 2022-01-27 14:22  欲穷  阅读(968)  评论(0编辑  收藏  举报