请告诉我如何使用LANG =“1”的特定表的所有DIV数组 的Javascript
表结构如下:
< table >
< tr > < td > < div id=1 lang="1" > some metter < /div > < /td >< /tr >
< tr > < td > < div id=2 lang="2" > some metter < /div > < /td >< /tr >
< tr > < td > < div id=3 lang="1" > some metter < /div > < /td >< /tr >
< tr > < td > < div id=4 lang="1" > some metter < /div > < /td >< /tr >
< /table >
答案 0 :(得分:5)
您可以为table
提供唯一ID,然后使用getElementsByTagName
功能:
var table = document.getElementById('tableId');
if (table == null) return;
var divs = table.getElementsByTagName('div');
for (var i = 0; i < divs.length; i++) {
var div = divs[i];
if (div.lang == '1') {
alert(div);
}
}
答案 1 :(得分:3)
ol'普通javascript会发生什么?
var divs = document.getElementsByTagName( '表')[0] .getElementsByTagName( 'DIV');
修改:忘记了最后一部分
var divLang = [];
for(a in divs){
((divs[a].getAttribute('lang')) ==1)? divLang.push(divs[a]) : false;
}
答案 2 :(得分:1)
如果您使用Prototype,jQuery,Closure等库,这是最简单的,它提供了几乎全套的CSS3 selectors。
使用Prototype,它看起来像这样:
var table = /* ...an expression finding the table...*/;
var divs = table.select('div[lang=1]');
例如,如果你给你的表一个id
的“myTable”:
var table = $('myTable');
var divs = table.select('div[lang=1]');
或者只是
var divs = $('myTable').select('div[lang=1]');
使用jQuery,如果你将id
提供给你的表,那就是:
var divs = $('#myTable div[lang=1]');
(是的,jQuery和Prototype都使用$
,但是用于不同的事情。)
答案 3 :(得分:1)
尝试
$('table[lang="1"]');
或指定他们的类让我们说“divclass”并选择它们
$('.divclass[lang="1"]');
这是jQuery语法,因为其他人在原型
中发布了