CustomValidator OnServerValidate方法确定收到的验证者ID

时间:2018-09-27 19:02:02

标签: c# asp.net web customvalidator

我想我的答案可能是“否”,但想验证我是否能够使用CustomValidator调用的方法从CustomValidator抓取ID。我之所以这样说,是因为我创建了一个CustomValidator方法,该方法对多个日期字段执行相同的操作。但是,我想根据具体情况为每个控件制作RequiredValidator Visible=False,以使它们不会像设置为{{ 1}}在visibility:hidden中。

我可以这样做吗?我什至找不到任何可以解决这个问题的东西。

1 个答案:

答案 0 :(得分:0)

我最终用它作为解决方案。

        CustomValidator cv = (CustomValidator)sender;
        if (cv != null && cv.ID != null)
        {
            string cvID = cv.ID.ToString();

            switch (cvID)
            {
                case "CustValidEMIActionOffDate":
                    reqEMIActionOffDate.Visible = false;
                    break;
                case "CustValidSignatureDateTextBox":
                    reqSigDate.Visible = false;
                    break;
                case "CustValidPrimaryDateTextBox":
                    reqPrimaryDate.Visible = false;
                    break;
                case "CustValidAltDateTextBox":
                    reqAltDate.Visible = false;
                    break;
            }
        }

在页面加载中,我添加了此元素以抵消隐藏的元素。可能应该先测试一下它们是否为Visible=false,但可以稍后再添加。

    if (IsPostBack)
    {
        reqEMIActionOffDate.Visible = true;
        reqSigDate.Visible = true;
        reqPrimaryDate.Visible = true;
        reqAltDate.Visible = true;
    }