我在gridview中的itemTemplate中有一个asp:按钮,其中绑定了一个fileUpload控件。按照此处的代码 - > Single Click File Upload in ASP.Net
然而,我被困在
function clickSeverControl() {
__doPostBack('<%= lnkUpload.ClientID %>', 'OnClick');
}
因为我的按钮嵌入在gridview中,我不知道如何将它的xxx.ClientID作为__doPostBack的event.target。
以下是我的代码。
使用Javascript:
<script type="text/javascript">
function uploadImage()
{
document.getElementById("FileUploadControl").click();
}
function confirmUpload()
{
__doPostBack(<WHAT TO PUT HERE>, 'OnClick');
}
</script>
ASPX:
<asp:gridview id="gvDirector" runat="server"<asp:TemplateField HeaderText="Signature" itemstyle-width="150" itemstyle-horizontalalign="Center">
<itemtemplate>
<asp:Button ID="btnViewSignature" runat="server" Text="View" CommandName="view"
CommandArgument="<%# ((GridViewRow) Container).RowIndex %>" />
<asp:FileUpload id="FileUploadControl" runat="server" style="display: none;" onChange="confirmUpload()" />
<asp:Button ID="btnUploadSignature" runat="server" text="Upload" CommandName="upload" OnClientClick="uploadImage(); return false;" OnClick="btnUpload_Click"
CommandArgument="<%# ((GridViewRow) Container).RowIndex %>"/>
</itemtemplate>
</asp:gridview>
我尝试使用$("#FileUploadControl")
,但服务器端onClick()事件未触发。会欣赏任何输入或路线。谢谢。
以下是我正在努力完成的截图。
一旦用户选择了文件,“上传”按钮就会触发fileUpload控件,上传自动开始,无需额外按钮即可“提交”文件。
P.S我只有一年的干扰.net和C#的经验,如果可能的话,请 ELI5 。
答案 0 :(得分:0)
How do I extract the name from HTML collection?
这会产生我在clientID上的上述问题的答案,但__ doPostBack不能很好地解决我原来的问题。
实际上非常简单。如果有人好奇的话,我已经在这里回答了我想做的事情。