Problem mit IE: Checkbox reagiert bei onChange nicht richitg

Delmar

Grünschnabel
Hallo,

ich habe folgenden Quellcode:

Code:
function chgDefect(id)
{
    if(document.form.defects.checked)
    {
	...
    }
    else
    {
	...
    }
}

Die Funktion wird wie folgt aufgerufen:

PHP:
<input type="checkbox" name="defects" onchange="chgDefect('defect')" />

Wenn die CheckBox angeklickt wird, wird die Funktion im Firefox wie gewollt sofort ausgeführt. Im IE wird die Funktion erst ausgeführt, wenn man nach anklicken der CheckBox den Focus aus dieser rausnimmt, sprich, einfach woanders hinklickt.

Hat jemand eine Idee, wie ich das Problem lösen kann?


Gruß
Florian
 
Hi,

... hatte ich (glaube ich) auch mal. Nimm onClick statt onChange, dann geht es. Übrigens:
HTML:
<input type="checkbox" name="defects" onchange="chgDefect('defect')" />
ist wohl ein Tippfehler, da der Name "defects" lautet, Du aber "defect" übergibst. Übergib einfach this, dann musst Du Dir um (u.U. sich ändernde) Bezeichner keine Gedanken machen:
HTML:
<input type="checkbox" name="defect" onchange="chgDefect(this)" />

Gruß

EDIT: ohh... oder habe ich in der Tat übersehen, dass Du ein anderes Objekt als das aufrufende übergeben willst? :suspekt: - defect und defects sind sich aber auch recht ähnlich.. ;)
.
 
Hi Datic,

vielen, vielen Dank! Jetzt geht's!

Tja, die Sache mit der Namensgebung ... leider bin ich da nicht sonderlich kreativ! :rolleyes:


Gruß
Florian
 
Zurück