我正在尝试获取元素的innerText
,但它正在返回undefined
。
代码:
<td id="some-id"><obs conceptId="3156" style="textarea"/>(this one here inserts the span element)</td>
在运行时生成html:
<td id="some-id"><span class="value">14</span></td>
我尝试使用document.getElementById("some-id").innerText
结果为undefined
。
我尝试使用document.getElementById("some-id").innerHTML
结果<span class="value">14</span>
。我想得到值14。
答案 0 :(得分:2)
<强> Demo Fiddle 强>
的Javascript
var td = document.getElementById('some-id');
alert(td.getElementsByTagName('span')[0].innerHTML);
关于innerText
的问题,它仅适用于IE,据我所知,Firefox和Chrome使用textContent
<强> Fiddle with textContent 强>
希望它有所帮助.. !!
答案 1 :(得分:1)
我认为我的目标是为什么它返回未定义的范围。在运行期间插入Span,如何更深入地获取值14。
看看这个:http://jsfiddle.net/8sr2D/1/
如果
<table>
<td id="some-id"><span class="value">14</span></td>
</table>
永远是这种情况,然后我想:
function getValueForTd(id) {
var element = document.getElementById(id);
var span = element.childNodes[0];
if(span !== undefined) {
var value = span.innerText;
return value;
}
return false;
}
应该为你提供价值。
答案 2 :(得分:-1)
试试这个,
document.getElementsByTagName(&#34;跨度&#34;)[0] .innerHTML