上传文件Upload
Upload FileUpload
我正在处理一个项目,我必须在其中上传 .txt
文件。我正在使用 asp.net FileUpload。这是一段代码:
<div class="custom-file">
<asp:FileUpload ID="inputFileTXT" CssClass="custom-file-input" runat="server" />
<label id="lblFileName" runat="server" class="custom-file-label" for="inputFileTXT">Elegir archivo</label>
</div>``
我正在使用来自 MDBootstrap 的样式。
问题是我想在用户单击 asp:fileUpload
元素并选择文件 WITHOUT WITHOUT CLICKING ON A BUTTON 时执行某些操作。我一直在搜索,但没有找到如何动态检测此操作。 asp:fileUpload
没有事件,例如 OnUploading
.
PD:我尝试使用 UpdatePanel,但是当它进行回发时,上传的文件似乎消失了。也许这是方法,但我无法让它工作。
您想检测文件何时分配给上传,只需使用 change
事件。
Jquery解法:
$('#inputFileTXT').on('change', function(){
//do stuff
});
javascript 解决方案:
<asp:FileUpload ID="inputFileTXT" CssClass="custom-file-input" runat="server" onchange="doStuff(this);" />
function doStuff(control){
//do stuff
}
然后您可以使用 FileReader api
(https://developer.mozilla.org/en-US/docs/Web/API/FileReader) 读取文件。
并使用 .files
访问文件:
var files = $('#inputFileTxt').files;
您可以向页面添加一个虚拟 LinkButton 并将其留空,但给它一个 OnClick
,您将在其中处理文件。
<asp:FileUpload ID="FileUpload1" runat="server" accept="image/*" />
<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click"></asp:LinkButton>
然后在后面的代码中将 onchange
触发器添加到将执行 LinkButton1 的回发的 FileUpload 控件。
protected void Page_Load(object sender, EventArgs e)
{
FileUpload1.Attributes.Add("onchange", "__doPostBack('" + LinkButton1.UniqueID + "','')");
}
PS 不要将 FileUpload 控件放在 UpdatePanel 中。
请看thislink
您应该在 FileUpload1
中获取文件详细信息(在您的情况下,fileUpload 控件 ID:inputFileTXT)。
我正在处理一个项目,我必须在其中上传 .txt
文件。我正在使用 asp.net FileUpload。这是一段代码:
<div class="custom-file">
<asp:FileUpload ID="inputFileTXT" CssClass="custom-file-input" runat="server" />
<label id="lblFileName" runat="server" class="custom-file-label" for="inputFileTXT">Elegir archivo</label>
</div>``
我正在使用来自 MDBootstrap 的样式。
问题是我想在用户单击 asp:fileUpload
元素并选择文件 WITHOUT WITHOUT CLICKING ON A BUTTON 时执行某些操作。我一直在搜索,但没有找到如何动态检测此操作。 asp:fileUpload
没有事件,例如 OnUploading
.
PD:我尝试使用 UpdatePanel,但是当它进行回发时,上传的文件似乎消失了。也许这是方法,但我无法让它工作。
您想检测文件何时分配给上传,只需使用 change
事件。
Jquery解法:
$('#inputFileTXT').on('change', function(){
//do stuff
});
javascript 解决方案:
<asp:FileUpload ID="inputFileTXT" CssClass="custom-file-input" runat="server" onchange="doStuff(this);" />
function doStuff(control){
//do stuff
}
然后您可以使用 FileReader api
(https://developer.mozilla.org/en-US/docs/Web/API/FileReader) 读取文件。
并使用 .files
访问文件:
var files = $('#inputFileTxt').files;
您可以向页面添加一个虚拟 LinkButton 并将其留空,但给它一个 OnClick
,您将在其中处理文件。
<asp:FileUpload ID="FileUpload1" runat="server" accept="image/*" />
<asp:LinkButton ID="LinkButton1" runat="server" OnClick="LinkButton1_Click"></asp:LinkButton>
然后在后面的代码中将 onchange
触发器添加到将执行 LinkButton1 的回发的 FileUpload 控件。
protected void Page_Load(object sender, EventArgs e)
{
FileUpload1.Attributes.Add("onchange", "__doPostBack('" + LinkButton1.UniqueID + "','')");
}
PS 不要将 FileUpload 控件放在 UpdatePanel 中。
请看thislink
您应该在 FileUpload1
中获取文件详细信息(在您的情况下,fileUpload 控件 ID:inputFileTXT)。