这个问题看起来很简单,但它让我很痛苦,我正在手动创建一个登录页面,用于检查来自 linq 的用户电子邮件和密码。在登录页面上有一个 asp 标签,它根据查询结果显示错误消息,如“用户不存在”或“用户处于非活动状态”等。两个文本框中都有 asp 必填字段验证器。问题是如果用户第一次尝试失败并且消息显示在标签上,除非用户成功登录,否则它不会消失。我希望文本在提交按钮上返回为 lable1.text="" 但它不能作为它是一个服务器端控件,如果为空,文本框验证器不会让它离开。我必须使用java脚本吗?
问问题
1205 次
2 回答
1
如您所想,这里最简单的做法是清除 javascript 中的消息。
<asp:Button ID="SubmitButton" OnClientClick="ClearLableText" runat="server" />
并根据您的评论更新了 javascript:
function ClearLableText() { var element = document.getElementById("<% this.lblMessage.ClientID %>"); element.innerHTML = ""; }
于 2012-07-11T15:26:11.140 回答
0
你可以试试这个
protected void page_load(object sender, EventArgs e)
{
MyMessageLabel.Text = ""; //or .Visible = false;
}
protected void Button_Click(object sender, EventArgs e)
{
//By this time, page_load had already executed and the Message Label cleared
MyMessageLabel.Text = "new result from server";
if(validResult)
//RedirectToWhere();
else
//StayOnPage();
}
希望对你有效。
于 2012-07-11T16:30:38.467 回答