我有以下标签
<asp:Label ID="lblErrorMessage" runat="server" Visible="false" ForeColor="Red" CssClass="ControlWidth"></asp:Label>
哪个是可见的错误。按钮保存,如果页面上有任何错误,我将其显示并显示错误信息。
在取消按钮上我正在清除这个标签的文本
var lblErrorMessage = document.getElementById('<%=lblErrorMessage.ClientID%>');
lblErrorMessage.innerHTML = "";
lblErrorMessage.innerText = "";
但是当我在页面上做一些其他的操作时,页面会得到回发和错误信息
我清除的内容可见。
任何人都可以告诉我如何通过javascript使标签Visible false,以及
在回发时无法显示。
答案 0 :(得分:0)
如果你想完全避免这个问题,请让你的cancel
按钮进行回发并清除标签值,并在服务器端再次将其可见性设置为false,而不是从客户端进行。发生这种情况的原因是因为即使你用javascript清除标签innerText和innerHtml; ViewState仍然包含旧值,所以当你回发时;它恢复了这些价值观。
如果你认为你可以在没有为wrror标签启用ViewState的情况下离开,你可以禁用它,问题就会消失;例如:
<asp:label id="errorlabel" EnableViewState="false" />