我遇到了一个奇怪的问题。我有一个带有 ajaxToolkit HtmlEditorExtender 的文本框。我需要使用 javascript 获取放入此文本框中的文本。
我设置了一个简单的测试:
var element = document.getElementById('<%=txtUserInput.ClientID%>');
alert(element);
这似乎报告该对象是一个 HTML textarea 元素,因此我使用 .value 来尝试获取里面的内容,然后我尝试了 .text 因为 .value 不起作用。
alert(element.Value);
alert(element.Text);
这两个都会给我一个弹出窗口,其中包含“未定义”。如何从该文本框中获取值?
我看过这篇文章:
JavaScript getElementById for ASP.NET Control returns null?
还有这个:
JavaScript get TextArea input via .value or .innerHTML?
这是我的 HTML 元素
<asp:TextBox ID="txtUserInput" Height="100%" Rows="10" Width="100%" TextMode="MultiLine"
runat="server" />
<ajaxToolkit:HtmlEditorExtender ID="HtmlEditorExtender_txtUserInput"
TargetControlID="txtUserInput" DisplaySourceTab="false" runat="server">
<Toolbar>
<ajaxToolkit:Bold />
<ajaxToolkit:ForeColorSelector />
<ajaxToolkit:Italic />
<ajaxToolkit:JustifyLeft />
<ajaxToolkit:JustifyCenter />
<ajaxToolkit:JustifyRight />
</Toolbar>
</ajaxToolkit:HtmlEditorExtender>
最佳答案
“.Value”和“.Text”是 ASP.NET 控件属性,而不是 Javascript 元素属性。您需要使用“.value”。
关于javascript - 使用 JavaScript 获取附加了 HTMLEditorExtender 的 ASP TextBox 元素的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12076421/