Оба предложения jQuery довольно хороши. Для DOM, борющегося с этим, вам действительно лучше использовать хорошую библиотеку.
И комментарий о сомнительной мудрости размещения в форме тысяч флажков также хорош ...
Но, если у вас есть все основания для этого, и вы не можете использовать jQuery или подобное, вот быстрый, прямой метод JS:
function redrawboxes(obj)
{
//check all boxes below
var next = obj;
while ( (next = next.nextSibling) )
{
if ( next.nodeName.toLowerCase() == "input"
&& next.type.toLowerCase() == "checkbox" )
next.checked = obj.checked;
}
}
протестировано в FF3, FF3.1, IE6, Chrome 1, Chromium 2