TD表格如果/等等

时间:2015-08-06 01:24:44

标签: javascript html html-table

我有一张桌子。我想要if / else语句,如果td在表中,则将变量x添加92.

这是我的代码,但显然if / else并不是我想要的。

//Html
<table id="Tableleft">
   <tr>
     <td id="92">Text 1</td>
   </tr>
</table>

//Javascript
var x = 0
if ( document.getElementByID('92')) { 
//Help Here Please
}

1 个答案:

答案 0 :(得分:1)

使用elem.parentNode迭代 DOM树以查看祖先是否为<table>

我对的要求的定义非常宽容“如果TD在表格中”,你可能想要更严格(例如只允许<tr><tbody><thead><tfoot><table>作为+92行动的有效祖先。

var x = 0,
    td = document.getElementByID('92'),
    e; // we'll use this in our loop
if (td) { // `td` is not `null` -> we found a node with _id_ `92`
    e = td;
    while (e = e.parentNode) { // iterate up the DOM tree
        if (e.tagName === 'TABLE') { // the `td` node has an ancestor `<table>`
            x += 92;
            break;
        }
    }
}

使用普通数字作为 id属性可能会产生意外结果。为获得最佳效果,请将第一个字符设为a-zA-Z,并避免在选择器中使用具有特殊含义的字符.#:@