Christoph: Tickboxen

Beitrag lesen

Mahlzeit,

Schon beim Abendessen?

Etwas eleganter gehts wohl mit:

Und NOCH eleganter wäre es so:

Und NOCH VIEL ELEGANTERER und auch bei komplexeren Abhängigkeiten nutzbar ist

  
function check(el) {  
 if(el.checked) for(var i = 1; i < arguments.length; ++i) {  
  var item = el.form[arguments[i]];  
  item.checked = true;  
  if(item.onclick)  
   item.onclick.call(item);  
 }  
}  
function uncheck(el) {  
 if(!el.checked) for(var i = 1; i < arguments.length; ++i) {  
  var item = el.form[arguments[i]];  
  item.checked = false;  
  if(item.onclick)  
   item.onclick.call(item);  
 }  
}  

nutzbar z.B. so:

  
<input type="checkbox" name="sport" onclick="uncheck(this, 'ballsport')"> Sport<br>  
<input type="checkbox" name="ballsport" onclick="uncheck(this, 'fussball', 'handball'); check(this, 'sport')"> Ballsport<br>  
<input type="checkbox" name="fussball" onclick="check(this, 'ballsport')"> Fussball<br>  
<input type="checkbox" name="handball" onclick="check(this, 'ballsport')"> Handball  

Christoph