JavaScript いきなり大苦戦

所詮、本を一冊読んだ程度じゃこの程度だよ!「特定のタグの下にあるすべてのチェックボックスをオンにする」だけで苦戦中。XPathでやろうとしているんだけど、ネームスペースの概念がよくわからねー。すげぇ楽しいんで、ガンバル。
(追記)
XPathがうまくいかんので、DOM APIでやってみたところ、getElementsByTagNameの呼び出し回数がえらいことになった。なるほど、先人はこの苦労を重ねたあげくprototype.jsの$()関数にたどり着く訳か・・・。

function checkAllOrNothing(checked) {
if (typeof checked == "undefined") {
checked = true;
}
var inputs = document.getElementById("release_list").
getElementsByTagName('form')[1].
getElementsByTagName('div')[0].
getElementsByTagName('div')[3].
getElementsByTagName('table')[0].
getElementsByTagName('tbody')[0].
getElementsByTagName('input');
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].type == "checkbox") {
inputs[i].checked = checked;
}
}
return false; // アンカー・ボタンの標準動作を抑制する
}


ネストが大変なことにwww タグにIDで名前を付ける重要性を理解した今日この頃です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする