0

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

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

  • 如果文本框被禁用,则值为 0 => 验证通过
  • 如果启用了文本框,则值取决于 suser => Validation 取决于用户输入

我发现如果文本框被禁用并且里面有一个值,验证器会阻止回发并显示消息,即使在文本框中有 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"/>

下拉列表中的 jQuery 执行以下操作:

if ($("[name*='tipoCIG']").attr('value') == "Singolo") {
    $("[name*='txt_CIGUnico']").removeAttr("disabled");
}
else {
    $("[name*='txt_CIGUnico']").attr("disabled", "disabled");
    $("[name*='txt_CIGUnico']").val("0");
}

有什么建议吗?

非常感谢

4

1 回答 1

1

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

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

第二个参数将验证器设置为启用 (true) 或禁用 (false)。

于 2012-10-16T08:44:04.667 回答