如何获取<option>元素的未截断文本值?</option>

时间:2009-02-02 11:55:35

标签: javascript internet-explorer dom text

我的HTML输出类似于:

<select>
<option value="1">Item1 </option>
</select>

如何使用JavaScript获取值“Item1”(带空格)而不是“Item1”?

在Internet Explorer中我尝试过的所有属性,例如 text innerHTML data nodeValue 返回“Item1”而不是“Item1”。

有趣的是,在Firefox中, textContent innerHTML 返回未截断的值,而 text 返回截断的值。

2 个答案:

答案 0 :(得分:2)

抱歉,IE的解析器确实丢弃了&lt; option&gt;中的尾随空格。奇怪的是,如果你为innerHTML分配一个带有尾随空格的字符串,IE会设法记住其中一个。可能最好不要依赖。

通常,如果你想要可见的尾随空格(在任何浏览器中),你必须使用非破坏空格字符(例如&amp;#160;字符引用)。

答案 1 :(得分:0)

你永远不应该依赖字面上的间距来解释。也许您的输出应该呈现为:<option value="1">Item1&nbsp;</option>

P.S。:它说在代码块中忽略了HTML,但我的实体在这里被转义。 (降价)