我正在尝试使用JavaScript更新ASP控件上的文本。下面的代码似乎应该设置它,但屏幕上的文本实际上永远不会改变。有人能告诉我下面的代码有什么问题吗?
标记
<asp:Label ID="lblBlah2" CssClass="Blah" Runat="server" Text="OriginalText"></asp:Label>
的JavaScript
var t = document.getElementById('<%=lblBlah2.ClientID %>');
t.attributes["Text"] = 'NewlyUpdateText';
alert(t.attributes["Text"]);
当JavaScript警报触发时,我看到“NewlyUpdateText”,但屏幕上的控件文本仍显示“OriginalText”。为什么文本中的更改会被忽略?
答案 0 :(得分:1)
问题是标签在生成的HTML代码中呈现为span元素,但您将文本设置为属性。相反,你应该这样做:
var t = document.getElementById('<%=lblBlah2.ClientID %>');
t.innerHTML = 'NewlyUpdateText';