<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" Height="146px"
Width="308px">
<Columns>
<asp:TemplateField HeaderText="Original Price" ControlStyle-Width="100px">
<ItemTemplate>
<asp:TextBox ID="txtOriginalPrice" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfv" runat="server" ControlToValidate="txtOriginalPrice"
ValidationGroup="GridView1" Display="Static" ErrorMessage="" Text="*"></asp:RequiredFieldValidator>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我正在使用上面的代码,但它没有工作,虽然我已经把requirefield验证器它没有显示'*'
答案 0 :(得分:2)
是的,你的requiredfieldvalidator肯定存在,并且它知道要验证哪个控件。缺少的是“何时验证该控件”。要回答这个问题,你需要将你的文本框与你的requiredfieldvalidator一起添加到同一个ValidationGroup中。 控件(例如,这可以是一个按钮)导致进行验证。所以你的代码就像
<%--<asp:Button ID="Button1" runat="server" ValidationGroup="GridView1" Text="Benjamin"...Somewhere in your code--%>
<asp:TextBox ID="txtOriginalPrice" runat="server" ValidationGroup="GridView1"></asp:TextBox>
所以不要忘记这些问题
所有这些控件必须具有相同的ValidationGroup。
答案 1 :(得分:1)
将ValidationGroup添加到TextBox(txtOriginalPrice
),按钮和其他控件。
答案 2 :(得分:1)
如果您需要执行验证,请检查类似的内容
<asp:Button ID="btnAdd" runat='server' ValidationGroup='GridView1' CausesValidation='true'.....
现在,当您单击添加按钮时,它将验证属于您提到的验证组的控件,默认值为“”,因此您将找不到任何触发的验证。