有没有办法在按钮的 OnClientClick 事件中使用 Javascript 来检查 ValidationSummary 控件的 IsValid 属性是否设置为 true?
我要做的是在上传页面上显示一条消息,上面写着“请稍候,您的文件正在上传”,但是如果我使用 javascript 来显示该消息,即使 ValidationSummary 有错误,它也会显示出来,所以消息与下面的错误一起显示,这使用户感到困惑。
有没有办法在按钮的 OnClientClick 事件中使用 Javascript 来检查 ValidationSummary 控件的 IsValid 属性是否设置为 true?
我要做的是在上传页面上显示一条消息,上面写着“请稍候,您的文件正在上传”,但是如果我使用 javascript 来显示该消息,即使 ValidationSummary 有错误,它也会显示出来,所以消息与下面的错误一起显示,这使用户感到困惑。
我认为这会做你想要的。
var isValid = false;
if (typeof(Page_ClientValidate) == 'function')
{
isValid = Page_ClientValidate();
}
if(isValid)
{
ShowMessage(...);
}
如果其他人需要这样的东西,这是我的解决方案:
在按钮的 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
中返回 true,OnClientClick
因为 javascript 验证在此之后运行,因此 1 秒延迟允许正确设置 IsValid 属性。
如果您在单个页面上有多个验证组,那么您应该只检查某个组:
var isValid = Page_ClientValidate('GroupName');
我想你应该做的是禁用上传按钮并在上传过程中显示一条消息。例如,通过使用 ajax 面板和进度模板。