代码之家  ›  专栏  ›  技术社区  ›  Arthur Chaparyan

使用OnClientClick检查ValidationSummary是否有效

  •  3
  • Arthur Chaparyan  · 技术社区  · 17 年前

    是否有方法在按钮的OnClientClick事件中使用Javascript检查ValidationSummary控件的IsValid属性是否设置为true?

    我想做的是在上传页面上显示一条消息,上面写着“请稍候,您的文件正在上传”,但是如果我使用javascript显示该消息,即使ValidationSummary有错误,它也会显示出来,因此该消息会与下面的错误一起显示,这会让用户感到困惑。

    4 回复  |  直到 17 年前
        1
  •  2
  •   John MacIntyre    17 年前

    我想这会满足你的要求。

    var isValid = false;
    if (typeof(Page_ClientValidate) == 'function') 
    {
       isValid = Page_ClientValidate();
    }
    
    if(isValid)
    {
       ShowMessage(...);
    }
    
        2
  •  2
  •   Ian Boyd    17 年前

    在按钮的OnClientClick事件中,我调用了一个名为showContent()的javascript函数。在这个函数中,我使用setTimeout调用第二个函数来检查页面的IsValid属性:

    function showContent() 
    {
        setTimeout("delayedShow()", 1);
    }
    
    function delayedShow() 
    {
        if (Page_IsValid != null && Page_IsValid == true) 
        {
           document.getElementById('divUploading').style.display = "block";
        }
    }
    

    这个 Page_IsValid OnClientClick 事件,因为javascript验证在此之后运行,因此1秒的延迟允许正确设置IsValid属性。

        3
  •  2
  •   Pavlo Neiman    13 年前

    如果在单个页面上有多个验证组,则应仅检查特定组:

    var isValid = Page_ClientValidate('GroupName');
    
        4
  •  0
  •   Ian Boyd    17 年前

    我想你应该做的是 dissable the uppload button