Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在asp.net中对gridview下拉列表和文本框进行验证?_C#_Asp.net_Gridview - Fatal编程技术网

C# 如何在asp.net中对gridview下拉列表和文本框进行验证?

C# 如何在asp.net中对gridview下拉列表和文本框进行验证?,c#,asp.net,gridview,C#,Asp.net,Gridview,我试过这个,但不起作用: function validationsBirdstra() { var grid = document.getElementById('<%=GVBirdstransfer.ClientID%>'); var theTextBoxvalue = grid.rows[0].cells[1].children[0].value; if (theTextBoxvalue == "") { alert('

我试过这个,但不起作用:

 function validationsBirdstra() {
 var grid = document.getElementById('<%=GVBirdstransfer.ClientID%>');
        var theTextBoxvalue = grid.rows[0].cells[1].children[0].value;
        if (theTextBoxvalue == "") {
            alert('enter Type please');
            return false;
        }
 }
我的观点是

    <table style="clear: both; float: none; margin-right: auto; margin-left: auto; font:  13px Verdana;">
            <tbody>
                <tr>
                    <td>      
   <asp:GridView ID="GVBirdstransfer" runat="server" BorderColor="#BDBDBD"    ShowFooter="True"
                            CssClass="center"  OnRowDataBound="GVBirdstransfer_RowDataBound" GridLines="Horizontal"
                            OnRowDeleting="GVBirdstransfer_RowDeleting" AutoGenerateColumns="False">
                            <EmptyDataTemplate>
                                No Records found</EmptyDataTemplate>
                            <Columns>
                                <asp:TemplateField ItemStyle-Width="20px" HeaderText="SNo">
                                    <ItemTemplate>
                                        <%#Container.DataItemIndex+1 %>
                                    </ItemTemplate>
                                    <ItemStyle Width="20px" />
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Type">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:DropDownList ID="ddltype" runat="server"  AutoPostBack="true" OnSelectedIndexChanged="ddltype_SelectedIndexChanged">
                                        </asp:DropDownList>
                                        <asp:RequiredFieldValidator ID="RFVbirdtype"  runat="server" ControlToValidate="ddltype"
                                            ValidationGroup="GridView1"  InitialValue="Select Me" Display="Dynamic" ErrorMessage="Please select Type"></asp:RequiredFieldValidator>
                                        <asp:ValidatorCalloutExtender ID="VCEbirdtype" runat="Server" TargetControlID="RFVbirdtype"
                                            EnableViewState="false" />
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="To Branch">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:DropDownList ID="ddltobranch" runat="server" AutoPostBack="true">
                                            <asp:ListItem Value="0" Text="--Select--"></asp:ListItem>
                                        </asp:DropDownList>
                                        <%--<asp:RequiredFieldValidator ID="RFVfrmbranch" runat="server" ControlToValidate="ddltobranch"
                                            ValidationGroup="GridView1" InitialValue="0" Display="None" ErrorMessage="Please select Branch "></asp:RequiredFieldValidator>
                                        <asp:ValidatorCalloutExtender ID="VCEfrmbranch" runat="Server" TargetControlID="RFVfrmbranch"
                                            EnableViewState="false" />--%>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Birds">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:TextBox ID="txtbirds" Width="70px" MaxLength="15" runat="server" onkeypress="return validatenumerics(event)"></asp:TextBox>
                                        <asp:RequiredFieldValidator ID="rfv" runat="server" ControlToValidate="txtbirds"
                                            ValidationGroup="GridView1" Display="Static" Text="*"></asp:RequiredFieldValidator>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Mortality">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:TextBox ID="txtmortality" Width="70px" MaxLength="15" runat="server" onkeypress="return validatenumerics(event)"></asp:TextBox>
                                        <asp:RequiredFieldValidator ID="rfv1" runat="server" ControlToValidate="txtmortality"
                                            ValidationGroup="GridView1" Display="Static" Text="*"></asp:RequiredFieldValidator>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Weight">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:TextBox ID="txtweight" Width="70px" MaxLength="15" runat="server" onkeypress="return validatenumerics(event)"></asp:TextBox>
                                        <asp:RequiredFieldValidator ID="rfv2" runat="server" ControlToValidate="txtweight"
                                            ValidationGroup="GridView1" Display="Static" Text="*"></asp:RequiredFieldValidator>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="GRNo">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:TextBox ID="txtgrno" Width="70px" MaxLength="15" runat="server" AutoPostBack="true"
                                            onkeypress="return validatenumerics(event)"></asp:TextBox>
                                        <asp:RequiredFieldValidator ID="rfv3" runat="server" ControlToValidate="txtgrno"
                                            ValidationGroup="GridView1" Display="Static" Text="*"></asp:RequiredFieldValidator>
                                    </ItemTemplate>
                                    <FooterStyle HorizontalAlign="Right" />
                                    <FooterTemplate>
                                        <asp:Button ID="BtnAdd" runat="server" Text="Add" OnClick="BtnAdd_Click" ValidationGroup="GridView1"
                                            CausesValidation="true" />
                                    </FooterTemplate>
                                    <ItemStyle Width="100px" />
                                </asp:TemplateField>
                                <asp:CommandField ShowDeleteButton="True" />
                            </Columns>
                        </asp:GridView>
                    </td>
                </tr>
                <%--  <tr>
                    <td align="center" style="padding-right: 10px">
                        <b>Total Weight:</b>
                        <asp:TextBox ID="txtTotal1" runat="server" Width="80px" />
                    </td>
                </tr>--%>
                <tr>
                    <td align="center">
                        <asp:Button ID="btnsave" runat="server" Text="Save" OnClick="btnSave_Click" OnClientClick="return validationsBirdstra();"
                            ValidationGroup="GridView1" CausesValidation="true" Style="height: 26px" />
                    </td>
                </tr>
            </tbody>
        </table>

我创建了gridview。我有一些下拉列表和文本框。现在我想对这些进行验证。

如果您使用的是RequiredFieldValidator,那么为什么要使用Javascript呢。只要删除OnClientClick in按钮并尝试,它就会启动

并在RequiredFieldValidator中将显示设置为动态

试试这个

<table style="clear: both; float: none; margin-right: auto; margin-left: auto; font:  13px Verdana;">
            <tbody>
                <tr>
                    <td>      
   <asp:GridView ID="GVBirdstransfer" runat="server" BorderColor="#BDBDBD"    ShowFooter="True"
                            CssClass="center"  OnRowDataBound="GVBirdstransfer_RowDataBound" GridLines="Horizontal"
                            OnRowDeleting="GVBirdstransfer_RowDeleting" AutoGenerateColumns="False">
                            <EmptyDataTemplate>
                                No Records found</EmptyDataTemplate>
                            <Columns>
                                <asp:TemplateField ItemStyle-Width="20px" HeaderText="SNo">
                                    <ItemTemplate>
                                        <%#Container.DataItemIndex+1 %>
                                    </ItemTemplate>
                                    <ItemStyle Width="20px" />
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Type">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:DropDownList ID="ddltype" runat="server"  AutoPostBack="true" OnSelectedIndexChanged="ddltype_SelectedIndexChanged">
                                        </asp:DropDownList>
                                        <asp:RequiredFieldValidator ID="RFVbirdtype"  runat="server" ControlToValidate="ddltype"
                                            ValidationGroup="GridView1"  InitialValue="Select Me" Display="Dynamic" ErrorMessage="Please select Type"></asp:RequiredFieldValidator>
                                        <asp:ValidatorCalloutExtender ID="VCEbirdtype" runat="Server" TargetControlID="RFVbirdtype"
                                            EnableViewState="false" />
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="To Branch">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:DropDownList ID="ddltobranch" runat="server" AutoPostBack="true">
                                            <asp:ListItem Value="0" Text="--Select--"></asp:ListItem>
                                        </asp:DropDownList>
                                        <%--<asp:RequiredFieldValidator ID="RFVfrmbranch" runat="server" ControlToValidate="ddltobranch"
                                            ValidationGroup="GridView1" InitialValue="0" Display="None" ErrorMessage="Please select Branch "></asp:RequiredFieldValidator>
                                        <asp:ValidatorCalloutExtender ID="VCEfrmbranch" runat="Server" TargetControlID="RFVfrmbranch"
                                            EnableViewState="false" />--%>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Birds">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:TextBox ID="txtbirds" Width="70px" MaxLength="15" runat="server" onkeypress="return validatenumerics(event)"></asp:TextBox>
                                        <asp:RequiredFieldValidator ID="rfv" runat="server" ControlToValidate="txtbirds"
                                            ValidationGroup="GridView1" Display="Dynamic" Text="*"></asp:RequiredFieldValidator>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Mortality">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:TextBox ID="txtmortality" Width="70px" MaxLength="15" runat="server" onkeypress="return validatenumerics(event)"></asp:TextBox>
                                        <asp:RequiredFieldValidator ID="rfv1" runat="server" ControlToValidate="txtmortality"
                                            ValidationGroup="GridView1" Display="Dynamic" Text="*"></asp:RequiredFieldValidator>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="Weight">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:TextBox ID="txtweight" Width="70px" MaxLength="15" runat="server" onkeypress="return validatenumerics(event)"></asp:TextBox>
                                        <asp:RequiredFieldValidator ID="rfv2" runat="server" ControlToValidate="txtweight"
                                            ValidationGroup="GridView1" Display="Dynamic" Text="*"></asp:RequiredFieldValidator>
                                    </ItemTemplate>
                                </asp:TemplateField>
                                <asp:TemplateField HeaderText="GRNo">
                                    <HeaderStyle HorizontalAlign="Center" />
                                    <ItemTemplate>
                                        <asp:TextBox ID="txtgrno" Width="70px" MaxLength="15" runat="server" AutoPostBack="true"
                                            onkeypress="return validatenumerics(event)"></asp:TextBox>
                                        <asp:RequiredFieldValidator ID="rfv3" runat="server" ControlToValidate="txtgrno"
                                            ValidationGroup="GridView1" Display="Dynamic" Text="*"></asp:RequiredFieldValidator>
                                    </ItemTemplate>
                                    <FooterStyle HorizontalAlign="Right" />
                                    <FooterTemplate>
                                        <asp:Button ID="BtnAdd" runat="server" Text="Add" OnClick="BtnAdd_Click" ValidationGroup="GridView1"
                                            CausesValidation="true" />
                                    </FooterTemplate>
                                    <ItemStyle Width="100px" />
                                </asp:TemplateField>
                                <asp:CommandField ShowDeleteButton="True" />
                            </Columns>
                        </asp:GridView>
                    </td>
                </tr>
                <%--  <tr>
                    <td align="center" style="padding-right: 10px">
                        <b>Total Weight:</b>
                        <asp:TextBox ID="txtTotal1" runat="server" Width="80px" />
                    </td>
                </tr>--%>
                <tr>
                    <td align="center">
                        <asp:Button ID="btnsave" runat="server" Text="Save" OnClick="btnSave_Click" ValidationGroup="GridView1" CausesValidation="true" Style="height: 26px" />
                    </td>
                </tr>
            </tbody>
        </table>

浏览网页后,打开页面源代码并查找网格视图。
您将在那里获得客户端id。现在用您的客户端id替换,并检查您面临的问题是什么?单击“保存”按钮时验证未触发。。。。