仅当复选框被选中时验证文本框-没有发回
本文关键字:文本 验证 复选框 | 更新日期: 2023-09-27 18:16:46
我有一个asp.net CheckBox和一个文本框,我只希望文本框在复选框被选中时验证,否则就这样吧。
我发现MVC后,但我想为asp.net表单验证文本框只有当复选框被选中使用MVC
这是我当前的代码,验证文本框,不管复选框是否选中,
<asp:TextBox ID="txtSubject" runat="server" />
<asp:CheckBox ID="chkSubjectRequired" runat="server" />
<asp:RequiredFieldValidator ID="rfvSubject" ControlToValidate="txtSubject" ErrorMessage="You must enter a subject." runat="server" />
您将需要一个自定义验证器,然后:
<asp:TextBox ID="txtSubject" runat="server" />
<asp:CustomValidator ControlToValidate="txtSubject" OnServerValidate="IsTextboxValid" Text="Text box is invalid" runat="server"/>
在后面的代码中,定义自定义验证方法:
protected void IsTextboxValid(object sender,ServerValidateEventArgs e)
{
e.IsValid=chkSubjectRequired.Checked;
}
请注意,这是服务器端验证
这就是你要找的。只需启用/禁用验证器(也可以是文本框),就可以了。
验证文本框编号:
<input type="text" onkeydown="ValidateNumber(event);">
<script>
function ValidateNumber(e) {
if ((e.keyCode >= 8 && e.keyCode <= 57) || (e.keyCode >= 96 && e.keyCode <= 105)) {
return true
}
return false;
};