Så är det inte för mig. Det finns två alternativ som jag ser det. Om minst en ruta är ikryssad och minst en ruta urkryssad, skall de resterande bli ikryssade vid anrop av CheckAll(). Det andra alternativet är det omvända:
<script type="text/javascript">
var form, elms, eLen;
window.onload = function(){
form = document.forms["delmailform"],
elms = form.elements,
eLen = elms.length;
for (var i = 0, elm; (elm = elms[i]); ++i)
if (elm.name == "del")
elm.onclick = function(){
this.parentNode.style.backgroundColor = this.parentNode.style.backgroundColor == "white" ? "blue" : "white";
}
}
function CheckAll(){
var ch = true;
for (var i = 0; i < eLen; ++i)
if (elms[i].checked) {
ch = false;
break;
}
var colors = ["white", "blue"];
for (var i = 0, elm; (elm = elms[i]); ++i){
elm.checked = ch;
elm.parentNode.style.backgroundColor = colors[ch * 1];
}
}
</script>
<html>
<body>
<form name="delmailform">
<table>
<tr>
<td id="td1"><input type="checkbox" name="del" value="<%=myArray(1,i)%>" onclick="toggleBgColor('td1',this)"></td>
</tr>
<tr>
<td id="td2"><input type="checkbox" name="del" value="<%=myArray(1,i)%>" onclick="toggleBgColor('td2',this)"></td>
</tr>
<tr>
<td id="td3"><input type="checkbox" name="del" value="<%=myArray(1,i)%>" onclick="toggleBgColor('td3',this)"></td>
</tr>
<tr>
<td id="td4"><input type="checkbox" name="del" value="<%=myArray(1,i)%>" onclick="toggleBgColor('td4',this)"></td>
</tr>
</table>
<a href="javascript:void(CheckAll());">Markera alla</a>
</form>
</body>
</html>
:)
