0

我有GridView一些TemplateField包含TextBox控件的项目。我想在上面添加一个必填字段验证器。这是我的代码:

<asp:TemplateField HeaderText="vid">
    <EditItemTemplate>
         <asp:TextBox ID="txtvid" runat="server" Width="150px"
                            Text='<%# Bind("vid") %>'>
         </asp:TextBox>
    </EditItemTemplate>
    <ItemTemplate>
         <asp:Label 
                   ID="lblvid" runat="server" 
                   Text='<%# Bind("vid") %>'>
         </asp:Label>
    </ItemTemplate>
 </asp:TemplateField>

如何放置必填字段验证器txtvid

4

2 回答 2

4

在编辑模板中,添加RequiredFieldValidator如下内容:

<EditItemTemplate>
    <asp:TextBox ID="txtvid" 
                 runat="server" Width="150px"
                 Text='<%# Bind("vid") %>'>
    </asp:TextBox>
    <asp:RequiredFieldValidator 
                 ControlToValidate="txtvid" 
                 runat="server" 
                 ErrorMessage="Please enter a 'vid' number" 
                 Text="*"/>
</EditItemTemplate>

这是MSDN 上的RequiredFieldValidator的参考。

更新:

如果您想要一个正则表达式验证器,它几乎相同,但带有RegularExpressionValidator控件:

 <asp:RegularExpressionValidator 
     ControlToValidate="txtvid"
     ValidationExpression="\d{10}"
     runat="server" 
     ErrorMessage="Please enter a 'vid' of 10 digits" 
     Text="*"/>

这是MSDN上RegularExpressionValidator功能的完整列表。

于 2013-10-02T07:40:40.080 回答
1

在gridview中,我分配了文本框,requiredfieldvalidator和按钮,当单击按钮而不填充文本框时,此验证器将验证gridview中的所有文本框。我该如何解决这个..

    <asp:TemplateField HeaderText="vid">               
        <ItemTemplate>
    <asp:TextBox ID="txtvid" runat="server" Width="150px" ValidationGroup ="subgrp">
             </asp:TextBox>
<asp:RequiredFieldValidator ID="rfvQuantity" ControlToValidate="txtvid" runat="server"
                    ErrorMessage="Required" ForeColor="Red"
                    ValidationGroup = "subgrp"></asp:RequiredFieldValidator>
             <asp:Label 
                       ID="lblvid" runat="server" 
                       Text='<%# Bind("vid") %>'>
             </asp:Label>
<asp:Button ID="btnSelect" runat="server" Text="Select" ValidationGroup ="subgrp"/>
        </ItemTemplate>
     </asp:TemplateField>

这将验证gridview中的所有文本框,当我单击特定行中的按钮而不填充itemtemplate中的文本框时。

于 2016-08-29T05:17:15.640 回答