Javascript 禁用文本框验证失败时的ASP RequiredField验证程序

Javascript 禁用文本框验证失败时的ASP RequiredField验证程序,javascript,asp.net,validation,requiredfieldvalidator,Javascript,Asp.net,Validation,Requiredfieldvalidator,我对asp.net必填字段验证程序有问题。在我的情况下,我有一个文本框,它依赖于DropDownList:如果选择了一个值,则文本框处于活动状态,否则它将被禁用并放入0值中 我认为验证器要做的是检查文本框是否为空,并且: 如果文本框被禁用,则值为0=>验证通过 如果文本框已启用,则该值取决于用户输入的suser=>验证 我发现,如果文本框被禁用并且里面有一个值,那么即使文本框中有0值,验证器也会阻止回发并显示消息!(我也试过用NA或类似的东西) 这是我的密码: <asp:TextBox

我对asp.net必填字段验证程序有问题。在我的情况下,我有一个文本框,它依赖于DropDownList:如果选择了一个值,则文本框处于活动状态,否则它将被禁用并放入0值中

我认为验证器要做的是检查文本框是否为空,并且:

  • 如果文本框被禁用,则值为0=>验证通过
  • 如果文本框已启用,则该值取决于用户输入的suser=>验证
我发现,如果文本框被禁用并且里面有一个值,那么即使文本框中有0值,验证器也会阻止回发并显示消息!(我也试过用NA或类似的东西)

这是我的密码:

<asp:TextBox ID="txt_CIGUnico" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator runat="server" ID="txt_CIGUnico_Validator" ControlToValidate="txt_CIGUnico" Display="Dynamic" InitialValue="" ErrorMessage="Inserisci un valore per il CIG"/>
有什么建议吗


非常感谢

我建议根据需要使用Javascript启用/禁用RFV

ValidatorEnable(document.getElementById('<%=txt_CIGUnico_Validator.ClientID%>'), false);
ValidatorEnable(document.getElementById(“”),false);
第二个参数将验证器设置为enabled(true)或disabled(false)

ValidatorEnable(document.getElementById('<%=txt_CIGUnico_Validator.ClientID%>'), false);