■■js如何得到元素的个数,很急!
<table>
<tr id="menu1">
<td> </td>
</tr>
</table>
<table>
<tr id="menu2">
<td> </td>
</tr>
</table>
<table>
<tr id="menu3">
<td> </td>
</tr>
</table>
怎样知道上面的id以menu开头的数量??
很急阿
问题点数:50、回复次数:10Top
1 楼mingxuan3000(铭轩)回复于 2006-03-02 13:31:32 得分 0
markTop
2 楼DeluxWorld(曾经的你)回复于 2006-03-02 14:35:56 得分 0
<table>
<tr id="menu1">
<td> </td>
</tr>
</table>
<table>
<tr id="menu2">
<td> </td>
</tr>
</table>
<table>
<tr id="menu3">
<td> </td>
</tr>
<tr id="menu4">
<td> </td>
</tr>
</table>
<script>
var i = 0;
var obj = document.getElementsByTagName('tr') || document.getElementsByTagName('TR');
for(var j=0; j<obj.length; j++){
if(obj[j].id.substring(0,4) == 'menu'){
i++
}
}
alert(i);
</script>Top
3 楼leisure_cn(小虫)回复于 2006-03-02 16:10:33 得分 0
function test(){
var items = document.getElementsByTagName("tr");
for( i = 0; i < items.length; i++) {
var id = items[i].id;
if(startsWith(id,"menu")) {
alert(id);
}
}
}
function startsWith(s, prefix) {
if (s.length < prefix.length) {
return false;
}
if (s.length > prefix.length) {
s = s.substr(0, prefix.length);
}
return s == prefix;
}Top
4 楼dreadknightll(Dread Knight)回复于 2006-03-02 20:59:48 得分 0
DeluxWorld(曾经的你) 的方法正解Top
5 楼zhaoxiaoyang(梅雪香@深圳)回复于 2006-03-02 21:50:10 得分 0
给这样的tr再加上name属性,都叫menu,然后用document.getElementsByName("menu").length就可以得到了Top
6 楼ice_berg16(寻梦的稻草人)回复于 2006-03-03 08:57:03 得分 0
楼上的方法在IE中是行不通的,
name不是哪个标签都可以随便用的,
不过给TR都加id属性id="menu",
用getElementsByName("menu")倒是可以,Top
7 楼KimSoft(革命的小酒天天醉-http://blog.csdn.net/kimsoft/)回复于 2006-03-03 09:10:08 得分 0
var obj = document.getElementsByTagName('tr') || document.getElementsByTagName('TR');
只要一个就可以
var obj = document.getElementsByTagName('tr')
不区分大小写的,呵呵Top
8 楼cvpc(一回)回复于 2006-03-03 10:23:00 得分 0
<script type="text/javascript">
var test = function(){
var num=0;
var el = document.getElementsByTagName("*");
for(var i=0;i<el.length;i++){
if(el[i].id && el[i].id.indexOf("menu")!=-1){
num++;
}
}
alert(num);
}
</script>
<ul id="menu0">
<li></li>
</ul>
<table border="1">
<tr id="menu1">
<td> </td>
</tr>
</table>
<table border="1">
<tr id="menu2">
<td> </td>
</tr>
</table>
<table border="1">
<tr id="menu3">
<td> </td>
</tr>
</table>
<input id="menu4">
<input type="button" value="检查页面ID以menu开头的元素或对象个数" onClick="test();">
Top
9 楼cvpc(一回)回复于 2006-03-03 10:27:54 得分 0
可以稍微修改满足更做需求
if(el[i].id && /^menu\d*$/.test(el[i].id)){
.......
}Top
10 楼LCKKING(黑旋风)回复于 2006-03-03 10:46:52 得分 0
DeluxWorld(曾经的你) ( ) 信誉:100
所说的基本上正确
不过document.getElementsByTagName('tr') || document.getElementsByTagName('TR');
中的tr是不区分大小写的,所以只要写一个就可以了
Top




