如何从JavaScript激活ASP.NET自定义验证器?

Emi*_*eón 5 javascript asp.net

我想在javascript中编写一个函数,每当我在webform中调用它时,它会在同一个webform中激活一个特定的验证器.

Hak*_*OSE 17

<asp:RequiredFieldValidator ID="passwordRequiredFieldValidator" runat="server" 
    ErrorMessage="* Password Required!"
    EnableClientScript="true" CssClass="errorText" 
    ControlToValidate="passwordTextBox"> 
</asp:RequiredFieldValidator>
Run Code Online (Sandbox Code Playgroud)

要激活此验证器,请使用:

window.ValidatorValidate(window.passwordRequiredFieldValidator);
Run Code Online (Sandbox Code Playgroud)

进一步举例:

function ValidatePassword() {
    window.ValidatorValidate(window.passwordRequiredFieldValidator);
    var valid = window.passwordRequiredFieldValidator.isvalid;
    alert(valid);
}
Run Code Online (Sandbox Code Playgroud)

  • 我相当肯定 window.ValidatorValidate(window.passwordRequiredFieldValidator) 会导致错误,因为 asp 控件将内容附加到结果标记中出现的 id 中。window.ValidatorValidate(window.&lt;%= passwordRequiredFieldValidator.ClientID %&gt;) 将带您到达您想去的地方,只要调用是在控件所在的同一页面上进行的。 (3认同)

Jos*_*rke 5

if (Page_ClientValidate('Validation Group'))
{
    //Your valid
}
Run Code Online (Sandbox Code Playgroud)