Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何获取a<;的内容;td>;使用JavaScript?_Javascript_Html_Dom - Fatal编程技术网

如何获取a<;的内容;td>;使用JavaScript?

如何获取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

我的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>
然后

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;