大家好,我的文本框需要一个必填字段验证器..这是我的文本框..
<asp:TextBox ID="txtTimeSlotGroupName" runat="server" AutoPostBack="false"
ClientIDMode="Static"></asp:TextBox>
<font color="red">*</font>
<asp:RequiredFieldValidator ID="RequiredFieldValidator_txtTimeSlotGroupName"
runat="server" ControlToValidate="txtTimeSlotGroupName" Display="None"
ErrorMessage="Timeslot Group Required!" ForeColor="Red" InitialValue="0"
ValidationGroup="TimeSlot"></asp:RequiredFieldValidator>
我的按钮:
<asp:Button ID="btnAddTimeSlots" Text="Add Timeslots" CssClass="button"
runat="server" OnClick="btnAddTimeslots_Click" ValidationGroup="TimeSlot"
OnClientClick="javascript:shouldsubmit=true;"/>
我没有收到错误消息。有什么解决办法吗?
您还必须定义您的
Textbox
的验证组....才能使其工作
<asp:TextBox ID="txtTimeSlotGroupName" runat="server"
AutoPostBack="false" ValidationGroup="TimeSlot" ClientIDMode="Static"></asp:TextBox>
从RequiredFieldValidator标签中删除InitialValue =“0”,验证文本框时不需要它。
即使我也面临着同样的问题。请检查您的页面上是否存在 javascript。 无论上述情况如何,请在代码中使用
Page.Validate()
方法和 if(Page.IsValid)
。这将自动强制您进行验证控制,问题将得到解决
如果两个对象具有相同的 id,则必填字段验证器将不起作用。
您只需在文本框中添加 ValidationGroup="TimeSlot"
<asp:TextBox ID="txtTimeSlotGroupName" runat="server" AutoPostBack="false"
ValidationGroup="TimeSlot" ClientIDMode="Static"></asp:TextBox>
我也遇到了同样的问题...但以上答案都不能解决我的问题...
我的问题是我在按钮按下方法中缺少
Page.isValid
。 下面是我的按钮代码和按钮调用的方法。
按钮:
<asp:Button ID="btnBtmSave" runat="server" Text="Save" OnClick="btnSave_Click" BtnGroup="save" TabIndex="18" />
按钮方式:
protected void btnSave_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
//Logic goes here
}
}
为所有文本创建相同的验证组并添加按钮和验证
ValidationGroup="AAA"
并将代码添加到您的保存按钮:
If (Page.IsValid) Then
YOURSQL.Insert()
'or ur code here'
End If
在我的例子中,对于按钮,我使用了客户端验证,即 onClientClick="return validate()" 和 ASP.NET 验证,即必需的字段验证 (ValidationGroup)。因此,必填字段验证器没有触发。
首先进入配置文件并在
后添加代码 <add key="ValidationSettings:UnobtrusiveValidationMode" value="None"/>
</appSettings>