从客户端禁用asp.net标签

时间:2011-02-02 15:54:09

标签: javascript asp.net

我有一个webform,它有很多控件和一个提交按钮。当用户提交干净数据时,有一个asp.net标签控件显示“表单提交成功”消息。我的问题是,在成功提交后,如果同一用户为同一表单上的某些字段输入了一些无效值并单击了提交按钮,该页面仍会显示成功消息以及该字段的asp.net错误消息(通过使用asp.net验证控件)。

我的问题是如何在这种情况下摆脱成功消息? (在这种情况下,我想要显示的是客户端验证错误消息)。我对javascript并不熟悉。

<asp:Button ID="btnAddActivity" Text="Add Activity" runat="server" onclick="btnAddActivity_Click" ValidationGroup="vgSetup" OnClientClick=" return changeLabel();"/>

<asp:Label ID="lblMessage" visible="false" ForeColor="red" runat="server"></asp:Label> 

function changeLabel()
{
    document.getElementById('<%= lblMessage.ClientID %>').innerHTML = "";

    return; 
}

这是标签和按钮的标记。我尝试在OnClick事件上调用javascript函数。这会禁用成功消息,但在回发后会显示验证错误消息。我想在没有回发的情况下显示验证错误消息。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:2)

尝试下面的内容:

<asp:Button ID="btnAddActivity" Text="Add Activity" runat="server" onclick="btnAddActivity_Click" ValidationGroup="vgSetup" OnClientClick ="changeLabel();"/>


function changeLabel()
{
        if !(Page_ClientValidate())
        {
               document.getElementById('<%= lblMessage.ClientID %>').innerHTML = "";
        }

}