ajax - 使用ajax上传时如何将文本框值捕获到文件名中?
问题描述
我正在使用这个 Ajax 上传代码。它工作正常但是,我希望能够在保存所有文件之前将文本框的值添加到文件名中。我无法将文本框的值捕获到文件名中并保存文件。
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true"
CodeBehind="AjaxUpload.aspx.cs" Inherits="contactDirectory.demo.AjaxUpload" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<div align="center">
<asp:TextBox ID="txtName" runat="server" AutoPostBack="False"></asp:TextBox>
<asp:AjaxFileUpload ID="AjaxFileUpload1" runat="server"
AllowedFileTypes="jpg,jpeg,png,gif,doc,pdf,xls,docx,xlsx"
MaximumNumberOfFiles="10"
OnUploadComplete="File_Upload"
onUploadCompleteAll="AjaxFileUpload1_UploadCompleteAll"
onUploadedStart="AjaxFileUpload1_UploadStart"
Width="500px" />
</div>
</asp:Content>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using AjaxControlToolkit;
namespace contactDirectory.demo
{
public partial class AjaxUpload : System.Web.UI.Page
{
string filename = "";
protected void Page_Load(object sender, EventArgs e)
{
}
protected void File_Upload(object sender, AjaxFileUploadEventArgs e)
{
filename = e.FileName + txtName.Text;
string strDestPath = Server.MapPath("~/documents/" + filename);
AjaxFileUpload1.SaveAs(strDestPath + filename);
}
protected void AjaxFileUpload1_UploadCompleteAll(object sender, AjaxFileUploadCompleteAllEventArgs e)
{
}
protected void AjaxFileUpload1_UploadStart(object sender, AjaxFileUploadEventArgs e)
{
}
}
}
解决方案
推荐阅读
- angular - 使用条件//角度在 app-routing-module 中选择不同的路由
- python - Django:从文件加载信息并在保存前进行编辑
- javascript - Firebase 实时数据库 - 确定用户是否有权访问路径
- android - 添加管理外部存储权限后,我无法将APK上传到谷歌商店
- github - 通过从 GitHub 部署的密钥在 GitLab 中访问 GitHub
- c++ - 如何将 8 字节整数转换为 4 字节整数
- graph - microsoft graph api:补丁嵌套结构
- xslt - XSLT:分析字符串并保留子节点
- sql - 如何为求和函数创建帕累托输出?
- c# - 为什么所有按钮在 WPF 中一次接收相同的状态?