作者pthuang (◢晓筱◤)
看板Ajax
标题[问题] 直接取到checkbox array而非input tag array
时间Thu May 26 19:04:08 2011
我现在写了一段 JavaScript 作用是全选当页的 checkbox
以下附上我目前的程式码
function checkall()
{
var chb = document.getElementsByTagName('input');
for ( var i in chb )
{
if ( chb[i].type == 'checkbox' )
{
chb[i].checked = true;
}
}
}
这样写是可以 但是总觉得有办法不要用到那个 if
感觉那个 if 很多余啊.... ((思
--
第一次用这种方式上色 上得好累 |||"orz
不知道会不会造成大家不习惯
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.251.198.97
1F:→ pthuang:补充:它只有type属性 没有ID也没有name.... |||"orz 05/26 19:07
2F:推 B9:不用 if 怎麽知道是 checkbox,除非用 jQuery $(":checkbox") 05/26 19:12
3F:→ pthuang:因为之前看到有人把del写成下面这个样子 所以才想到会不 05/26 19:18
4F:→ pthuang:会有其它类似的方法可以一次解决掉.... 05/26 19:19
5F:→ pthuang:del("//table[@id='resources']/tbody/tr[2]/td[4]") 05/26 19:19
7F:→ mesak:另外你说的模式是使用 xpath 的概念 05/27 14:42
话说这例子还是有用到class耶 我指的状况是只有type属性 @@
而且发现它有个小BUG 如果我先勾选了第一组的第二项
再去点第一组的CheckAll→UncheckAll时 第二项似乎就不被认定在群组内?
同样的 如果我点CheckAll→取消勾选第二项→UncheckAll→CheckAll
第二项也不会再被选起来.... 囧
※ 编辑: pthuang 来自: 111.251.198.97 (05/27 18:45)
8F:推 mesak:好神奇 XDDDD 05/27 23:11
9F:推 scribeTW:那个Bug因为要用prop来改较正确,attr算是改初始值 05/31 22:22
11F:→ scribeTW:你可以试试Edge版本就可以了。以前用attr算误用 05/31 22:26
12F:→ scribeTW:讲清楚一点,1.6把HTML attribute和DOM property分开了 05/31 22:34
13F:→ mesak:峔銗L版本的好像比较正常 06/01 10:54