0

我有一些旧的 ASP.NET 项目要返工,因为这是我第一次接触 ASP,所以我不太了解它。

我有一些数字表格,其中有 5-6 个字段,其中 4 个附加了内置验证器。

每个验证器都附加了客户端 JavaScript 函数,因此当我从字段中松开焦点时,它会得到验证,如果验证不正确,它会给出红色星号,你会发现有问题。

例如,一个功能是:

function validateEmail(src, arg) {
        var email = document.getElementById('txtEmail_txt').value;
        var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
        arg.IsValid = reg.test(email);
    }

现在一切正常,但需要额外的“功能”,当所有必填字段都有效时,启用“继续”按钮。

我通过将控件与“.ascx.cs”文件中的检查功能绑定来做到这一点:

txtEmail.textbox.AutoPostBack = true;
txtEmail.textbox.TextChanged += new EventHandler(requiredfields_TextChanged);
chkEmailCheck.AutoPostBack = true;
chkEmailCheck.CheckedChanged += new EventHandler(requiredfields_TextChanged);

然后,如果我的要求正确,我将 Project 值设置为 true:

 void requiredfields_TextChanged(object sender, EventArgs e)
{
    Project p = setProject();

        btnSave.Enabled = EnableSubmitBtn(p);

}

我想用

 private bool EnableSubmitBtn(Project p)
{
    if (p.ProcedureType == 2)
    {
        if ('CustomValidator3 is valid' && chkEmailCheck.Checked==true){
            return true;
        }
    }
    else
    {

    }
 return false;
}

现在,我不确定是否可以从 CustomValidator3 获得响应(类似于 CustomValidator3.isValid == true,顺便说一下不起作用),或者是将 JavaScript 函数重写为服务器端函数的唯一方法,然后检查那个功能?

4

0 回答 0