Formularelemente ein-/ausblenden u. Reset

Hallo,

ich benötige ein kleines JS Script, dass Formularelemente dynamisch ein- und ausblendet. Leider funktioniert es nicht zu 100% wie es soll. Bei einem Druck auf die Reset Button, blenden die Formularelemente nicht wieder ein. Weiß jemand Abhilfe, leider verschtehe ich nichts von JS :confused:

function einblenden(){
var select = document.getElementById(‚kleidungsstueck‘).selectedIndex;
document.getElementById(‚jacke‘).style.display = (select == 1? „block“: „none“);
document.getElementById(‚hose‘).style.display = (select == 2? „block“: „none“);
}

AuswahlJackeHose
Jacke:

Hose:

Also bei mir wird das nicht zu gemacht, warum auch , du machst ein reset.
Das setzt aber nur die werte neu , löst aber kein onchange aus (weil du ja ganichts mit dem controllfeld (select) zu tun hast.

aber du kannst bei onReset eine funktion aufrufen die alles wieder schliesst.

function einblenden(){
var select = document.getElementById(‚kleidungsstueck‘).selectedIndex;
document.getElementById(‚jacke‘).style.display = (select == 1? „block“: „none“);
document.getElementById(‚hose‘).style.display = (select == 2? „block“: „none“);
}
function ausblenden(){
document.getElementById(‚jacke‘).style.display = „none“;
document.getElementById(‚hose‘).style.display = „none“;
}

AuswahlJackeHose
Jacke:

Hose:

Hallo,

ich habe zuerst angeommen, dass eine Ausblendung efolgt, da Reset auch das „Mutterformlarelement“ auf den Ausgangswert zurücksetzt. Aber das war nur eine Vermutung ohne jegliches JS Wissen. Deine Lösung funktioniert übrigens, danke. Bei einem längeren Formular mit Ein- und Ausblendungen an verschiedenen Stellen muss ich dann anscheinend jedes auszublendende Formularelement in die neue Funktion ausblenden() einbinden. Oder gibt es eine „globalere“ Lösung?

Formularelement in die neue Funktion ausblenden() einbinden.
Oder gibt es eine „globalere“ Lösung?

nicht wirklich , ich denk am einfachsten ist erstmal das feld manuel einzutragen . du könntest auch mit classen namen arbeiten und alle elemente der classe ansprechen . Und es gibt noch einige andere duzend möglichkeiten . Also mach konkretes beispiel , vielleicht findet sich ja einer das zu machen .

Danke nicht nötig, ich bin mit der Lösung soweit zufrieden :smile: Nur eines noch: Ist es mit JS auch möglich, dass der Inhalt zurückgesetzt wird, wenn das entsprechende Feld ausgeblendet wird?

Danke nicht nötig, ich bin mit der Lösung soweit zufrieden :smile:
Nur eines noch: Ist es mit JS auch möglich, dass der Inhalt
zurückgesetzt wird, wenn das entsprechende Feld ausgeblendet
wird?

klar kannst du dir dein eigenen reset bauen

für input felder

document.getElementById(‚elementname‘).value ="";

für selectfelder ist es nicht .value="";
sondern .selectedIndex = 0;