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

希望这对你有所帮助。