清除/重置网格视图中的文件上载控件

Clear/Reset file upload control in grid view

本文关键字:文件 上载 控件 视图 网格 清除      更新时间:2023-09-26

我在asp.net网格视图中有多个文件上传控件,当文件选择错误时,我想清除/重置文件上传控件。

文件上传1 btnReset 1文件上传2 btnReset 2…

当我单击btnReset 2时,只清除fileupload2 的值

我如何使用java脚本来实现这一点。

提前感谢大家

我的代码如下。

JS代码:-

<script type="text/javascript">
        function hi(ob) {
            debugger;
            var grid = document.getElementById("<%= GridView1.ClientID %>");
            var inputs = grid.getElementsByTagName("input");
            var fileUpload;
            var strRowNo = ob.id.toString().split("_")[3];//get row number
            alert(strRowNo);
            for (var i = 0; i < inputs.length; i++) {
                if (inputs[i].type == "file") {
                    fileUpload = inputs[i];
                    if (i == strRowNo) {
                        fileUpload.value = "";
                    }
                }
            }
        }
    </script>
//Aspx Code:-
  <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        <ContentTemplate>
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
                <Columns>
                    <asp:BoundField DataField="A" HeaderText="A" />
                    <asp:BoundField DataField="B" HeaderText="B" />
                    <asp:BoundField DataField="C" HeaderText="C" />
                    <asp:TemplateField HeaderText="File">
                        <ItemTemplate>
                            <div id="fuDiv" runat="server">
                                <asp:FileUpload ID="fupFile" runat="server" />
                            </div>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Reset">
                        <ItemTemplate>
                            <asp:Image ID="ibtnReset" runat="server" onClick="javascript:hi(this);" />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
        </ContentTemplate>
    </asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
            <Columns>
                <asp:BoundField DataField="A" HeaderText="A" />
                <asp:BoundField DataField="B" HeaderText="B" />
                <asp:BoundField DataField="C" HeaderText="C" />
                <asp:TemplateField HeaderText="File">
                    <ItemTemplate>
                        <div id="fuDiv" runat="server">
                        <asp:UpdatePanel ID="update_fupFile" runat="server" UpdateMode="Conditional">
                        <ContentTemplate>
                            <asp:FileUpload ID="fupFile" runat="server" />
                        </ContentTemplate>
                        <Triggers>
                        <asp:AsyncPostBackTrigger ControlID="ibtnReset" EventName="Click" />
                        </Triggers>
                            </asp:UpdatePanel>
                        </div>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Reset">
                    <ItemTemplate>
                     <asp:UpdatePanel ID="update_fupFile" runat="server" UpdateMode="Conditional">
                        <ContentTemplate>
                        <asp:Image ID="ibtnReset" runat="server" onClick="javascript:hi(this);" />
                        </ContentTemplate>
                       </asp:UpdatePanel>
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>
        </asp:GridView>
    </ContentTemplate>
</asp:UpdatePanel>