我有一个重复的表,其中元素的名称为(例如'tdName_1''tdName_2'),我想知道是否有可能getElementsByName('tdName_')。

PS:我不能使用Jquery。

提前致谢。

塞萨尔

最佳答案

这不可能。对于本答案的其余部分,我假设您感兴趣的元素是<td>。如果是这样,那么您应该知道name属性对于<td>元素无效。

您将必须手动创建匹配元素的列表。如果您决定仍然使用name属性(而不是在class属性中添加类),则类似以下内容的方法将起作用:

var table = document.getElementById("your_table_id");
var tds = table.getElementsByTagName("td");
var matchingTds = [];

for (var i = 0, len = tds.length, td, tdName; i < len; ++i) {
    td = tds[i];
    tdName = td.getAttribute("name");
    if (tdName && tdName.indexOf("tdName_") == 0) {
        matchingTds.push(td);
    }
}

10-06 15:27