1

一开始,没有验证器,一切正常

Web 用户控件有一个按钮,可以在 Jquery 弹出对话框中打开面板。该面板有一些文本框。

然后是RegularExpressionValidator,我很生气

我将 RegEx 验证器添加到我的多行文本框中,以确保最大长度。它们确实有效,但是当我关闭 JQuery 对话框并尝试再次打开它时,会出现错误:“无法读取 null 的属性值”。这是方法:

当对话框关闭时:

$("#" + PanelClientId)        
        .dialog({
            autoOpen: false,            
            hide: tipoHide,
            modal: true,
            title: titulo,
            width: ancho,
            height: alto,
            close: function(ev, ui) { $(this).remove();}
            });    

Validator 控件为空,但客户端验证例程触发并失败

function ValidatorGetValue(id) {
    var control;
    control = document.getElementById(id);
    if (typeof(control.value) == "string")

正如我所说,因为控制是空的。

请帮我

我希望我用我蹩脚的英语表达清楚。请帮我解决这个问题。我正在考虑在验证之前添加客户端事件,然后将 ControlToValidate 分配给我的验证器,但直到现在我还无法添加任何在验证之前执行的事件。

所以家人,非常感谢您花时间阅读本文并提供宝贵的帮助。

这是我的验证器代码:

<asp:TextBox runat="server" ID="txtJustificacionSpeaker" TextMode="MultiLine" Wrap="true"
    Rows="4" Width="90%" CssClass="TextoMultilineaScrollAuto"></asp:TextBox>
<asp:RegularExpressionValidator id="revJustificacionSpeaker" runat="server"
        ErrorMessage="*" ToolTip="La justificación no puede exceder 2000 caracteres" ValidationExpression="^([\S\s]{0,2000})$" ControlToValidate="txtJustificacionSpeaker" />
4

0 回答 0