eval() bei Form Elementen im IE

Andreas Gaisbauer

Erfahrenes Mitglied
Hallo,

bräuchte eine kurze Idee. Also ich hab vier Checkboxen - alle mit dem selben Namen. Onclick rufe ich eine Funktion auf und gebe ihr "this" - als referenz auf das Objekt - mit.
HTML:
<input name="rc" type="checkbox" onclick="setUnique(this);" checked value="all"> 
<input name="rc" type="checkbox" onclick="setFirst(this);" value="0">
<input name="rc" type="checkbox" onclick="setFirst(this);" value="1"> 
<input name="rc" type="checkbox" onclick="setFirst(this);" value="2">
die Funktionen an und für sich funktionieren - da ist kein Problem. Ich möchte aber anhand von "this" auf das komplette Formular schliesen. Im Mozilla funktioniert das auch einwandfrei mit
HTML:
function setUnique(obj){
  var element = document.eval(obj.form.name).eval(obj.name);
  for(var x=1; x<element.length; x++){
    element[x].checked = false;
  }
}
Das Teil soll halt alle Checkboxen mit dem Namen auf false setzten, bis auf die erste. Der IE verschluckt sich aber am eval... wie bekomm ich's hin, das er das auch checkt... Wahrscheinlich nur eine Kleinigkeit, aber ich schau heute schon zu lange drauf ;)


thx on advance

ciao Andreas
 
Falls du nicht auf eval() bestehst, ginge es mit
Code:
var element = obj.form.elements[obj.name];
....aber Vorsicht....der IE legt nur einen elements-Array an, wenn es mehrere Elemente mit identischem Namen gibt(wie in diesem Fall)....gibt es nur eines, kann man es nicht per form.elements['name'][0] ansprechen.
 

Neue Beiträge

Zurück