asp:基于条件的RequiredFieldValidatorvalidation
我有如下validation,但只是在勾选复选框时才触发。
Name:
我可以使用asp:RequiredFieldValidator完成它吗?
我只想validation某个条件是否匹配。
目前,每次点击“保存”按钮时都会进行validation。
改为使用自定义validation器:
和脚本(只是选中一个复选框和文本框值作为示例;您可以使用自定义逻辑):
这将进行客户端validation。 如果还需要服务器validation,请添加OnServerValidate
属性,并在代码后面添加处理程序。 详情请见此处 。
我通过在客户端添加以下javascript轻松解决了这个问题。
ValidatorEnable(document.getElementById("RequiredFieldValidator1"), true); or ValidatorEnable(document.getElementById("RequiredFieldValidator2"), false);
你也可以试试这个
protected void CheckBox_CheckedChanged(object sender, EventArgs e) { if(CheckBox.Checked) { RequiredFieldValidator1.Enabled = true; RequiredFieldValidator1.ValidationGroup = "anything"; Button1.ValidationGroup = "anything";// your save button } else { RequiredFieldValidator1.Enabled = false; RequiredFieldValidator1.ValidationGroup = string.Empty; Button1.ValidationGroup = string.Empty; // save button } }
试试这个…
protected void RequiredFieldValidator1_Load(object sender, EventArgs e) { if (CheckBox1.Checked == true) { RequiredFieldValidator1.Enabled = true; } else if (CheckBox1.Checked == false) { RequiredFieldValidator1.Enabled = false; } }
您可以从Javascript / jQuery启用/禁用RequiredFieldValidator 。 对于您的情况, 选中复选框时 : – 只需调用javascript函数以启用RequiredFieldValidator,并在其取消选中时禁用RequiredFieldValidator。
对于其他条件,如下拉列表更改,文本框值更改和单选按钮选择更改,您可以分别调用其onchange,onblur,onclick,并在执行所需条件后,您可以启用/禁用 RequiredFieldValidator 。
希望这对你有所帮助。