如何使用 JavaScript 获取 <td> 的内容?
2011-05-13
7288
我的 HTML
<tr class="g1">
<td id="saveursqte_box[]">
<div class="t">
xxxxxxxxxxxxx
<div class="r">
<div class="a">
</div>
<img src="images/saveurs/saveur_test.jpg" width="125" border=0>
</div>
</div>
</td>
<td class="i">
<input type="text" name="saveursqte[]" alt="2.95" value="" size="3" onBlur="__sumform();">
</td>
</tr>
我想做什么
我想使用 javascript 获取以下内容:
<td id="saveursqte_box[]">
。
即:
<div class="t">
xxxxxxxxxxxxx
<div class="r">
<div class="a">
</div>
<img src="images/saveurs/saveur_test.jpg" width="125" border=0>
</div>
</div>
我尝试了这个 javascript:
var saveursqte_box = document.getElementsById('saveursqte_box[]');
然后
htmltotal = htmltotal + saveursqte_box[i].innerHTML;
但 javascript 似乎不喜欢我 :-(
3个回答
document.getElementById 没有“s”。
此
document.getElementById('saveursqte_box[]');
返回单个 dom 元素,而不是像 jQuery 那样的数组。因此,获取 innerHTML 的代码将是:
htmltotal += saveursqte_box.innerHTML;
scrappedcola
2011-05-13
除了 @scrappedcola 指出
getElementById
中没有“s”之外,您在元素 id 中使用方括号时也可能遇到问题。
我在 Firefox 4 中使用
<td id="saveursqte_box">
运行了您的示例,并且成功了,而使用
<td id="saveursqte_box[]">
时,
getElementById()
的结果为
NULL
。
Adam Franco
2011-05-13
另外: saveursqte_box[i] i 未定义。只需使用 saveursqte_box
Mouse Food
2011-05-13