如何使服务器端标签可见false从javascript

How to Make server side lable visible false from javascript?

本文关键字:false javascript 何使 服务器端 标签      更新时间:2023-09-26

我有以下标签

 <asp:Label ID="lblErrorMessage" runat="server" Visible="false" ForeColor="Red" CssClass="ControlWidth"></asp:Label>

可见为false。在按钮上保存,如果页面上有任何错误,我使它可见并显示错误信息。

在取消按钮上,我通过Javascript清除这个标签的文本

  var lblErrorMessage = document.getElementById('<%=lblErrorMessage.ClientID%>');
  lblErrorMessage.innerHTML = "";
  lblErrorMessage.innerText = "";

但是当我在页面上执行其他操作时,页面会得到回发和错误消息

我已经清除了

谁能告诉我如何通过javascript使标签可见为假,并且应该

如果您想完全避免这个问题,让您的cancel按钮执行回发并清除标签值,并将其可见性再次从服务器端设置为false,而不是从客户端执行。发生这种情况的原因是因为即使你清除标签innerText和innerHtml与javascript;ViewState仍然包含旧的值所以当你发回;它恢复这些值。

如果你认为你可以离开没有ViewState被启用错误的标签,你可以禁用它,问题就会消失;例如:

<asp:label id="errorlabel" EnableViewState="false" />