javascript - 回发前如何进行验证?

标签 javascript asp.net validation postback

我有带有 ASP.Net 验证器的自定义控件。

writer.AddAttribute(HtmlTextWriterAttribute.Onclick, "javascript:return DoSmth();");

function DoSmth() {
var cBox = confirm("Are you sure?");
if (!cBox) {
    return false;
}
else {
//Invoke validation
}

当我按下提交按钮时,我会调用确认框。如果我按取消 - 好吧。但如果我按确定,我需要进行验证。如何停止回发并进行验证?

最佳答案

调用客户端Page_ClientValidate(validationGroup) 。它返回 true页面是否有效。

function DoSmth() {
    var cBox = confirm("Are you sure?");
    if (!cBox) {
        return false;
    }
    else {
        return Page_ClientValidate(validationGroup);
    }
}

编辑(评论的答案):

validationGroup这里是一个字符串变量,没有必要将它传递给 DoSmth函数(老实说,答案应该是:这取决于)。

如果这个函数定义在.js中文件,然后是,validationGroup应作为参数传递。

如果它是页面/控件的一部分,那么使用起来会更容易,例如服务器端结构如下:

return Page_ClientValidate('<%= btnSubmit.ValidationGroup %>');

哪里btnSubmit是一个导致验证的按钮,或者仅使用一个字符串变量。

关于javascript - 回发前如何进行验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5465158/

相关文章:

ajax - 为什么这个简单的 jQuery ajax 不起作用?

javascript - 严格模式下不允许使用八进制文字

c# - Entity Framework : Object Reference not set to instance of an object

asp.net - 如何拒绝用户访问子文件夹和文件?

validation - 保持 <p :dialog> open when validation has failed

用于在字符串中查找模式的 Javascript 正则表达式,不包括可能的前面单词匹配

javascript - 如何使textarea填充其父宽度的宽度?

c# - 如何让 CrystalReportViewer 在屏幕上居中?

c# - 错误处理WPF-MVVM

ruby - 验证框架的替代 Rails