Felix Riesterer: onChange funzt nicht

Beitrag lesen

Lieber wahsaga,

Wodurch könnte diese Fehler verursacht werden?

Herr Doktor, ich haben Aua, wo ich krank?

Also ich gebe zu, dass ich das Problem des Posters verstanden habe! So ungeschickt war seine Beschreibung dann doch nicht!

Der Denkfehler des OPs ist der, dass onChange nicht feuert, wenn per Script der Wert (oder muss es heißen: die Auswahl) eines Select-Feldes geändert wird.

Wenn man die onChange-Wirkung eines Formular-Elementes erhalten will, dessen Wert per Script geändert wurde, dann muss man (sozusagen per Hand) die im onChange-Eventhandler notierte Funktion selbst aufrufen, damit die Reaktion stattfindet. Schematische Darstellung:

+-------------------------+   +-------------------------+
|box1 onChange="f1(this)";|   |box2 onChange="f2(this)";|
+-------------------------+   +-------------------------+

+-------------------------+
             |box3 onChange="f3(this)";|
             +-------------------------+

Code:

function f1(htmlElement) {  
    bla.blubb.xy();  
    f2(objekt_box2);  
}  
function f2 {  
    blubb.blabb.abcd(htmlElement);  
    f3(objekt_box3);  
}  
function f3(htmlElement) {  
    blah.blah();  
}  

Liebe Grüße aus Ellwangen,

Felix Riesterer.