如何获取a<;的内容;td>;使用JavaScript?
我的HTML如何获取a<;的内容;td>;使用JavaScript?,javascript,html,dom,Javascript,Html,Dom,我的HTML <tr class="g1"> <td id="saveursqte_box[]"> <div class="t"> xxxxxxxxxxxxx <div class="r"> <div class="a"> </div> <img src
<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>
然后
htmltotal = htmltotal + saveursqte_box[i].innerHTML;
但是javascript似乎不喜欢我:-(它是document.getElementById no“s”。 这个
document.getElementById('saverSqte_box[]);
返回一个dom元素,而不是像jQuery那样的数组。因此获取innerHTML的代码是:
htmltotal += saveursqte_box.innerHTML;
除了@scrasedcola关于
getElementById
中没有“s”的注释外,在使用元素id中的方括号时可能还会遇到问题
我用
在Firefox 4中运行了您的示例,它成功了,而使用
我得到了NULL
,这也是getElementById()
的结果:
储蓄箱[i]
我没有定义。只需使用saveursqte__box就可以了。多亏了大家!我知道我的Javascript技能很低,但通过将您的答案结合在一起,我得出了这个结论,它工作得非常完美:
htmltotal+=document.getElementById('saveurmoisqte\u box\uu'+i).innerHTML;
根据你的回答,我删除了getElementById
的“s”。我的错:我复制了getElementsByName
,然后用Id
替换了Name
…这就是为什么那里有一个“s”。这种错误会浪费你一周的时间来调试
在那之后,我用
重命名了我的
。我以为你可以像使用名称那样编写ID
数组(例如:name=“xxxx[]”
),然后进行迭代,但我错了
有了它,它就完美地工作了!不是bea-u-tiful,而是它工作了
我实际上在做的是:
<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>
我有一个包含许多项目的订单,当您填写输入(数量)时,产品的悬停图像会显示在其右侧…当您离开(onBLur)时,表单总数会更新,使用上面的函数,我会获取
的内容(包括悬停图像),并将所选项目的摘要放在“签出部分”。结果对用户来说是超级干净且友好的。不方便的是,我希望这对您有意义。除非我弄错了,[和]不是HTML id属性中的有效字符…[]可以在id中使用,但不是标准字符。
htmltotal += saveursqte_box.innerHTML;