Hallo,
Wenn ich die selectbox auf 0 setze dann berechnet er doch keine summe wenn die box aktiviert ist oder?
Hast du das ausprobiert?
ja habe ich funktioniert nicht.
Mir war bei deiner Aussage nicht klar, ob du überhaupt was genacht hast oder einfach nur Fragen stellst.
Die IDs dienen nur für den script zum errechnen der selectbox und eingabefeld oder?
IDs dienen dazu, ein Element eindeutig zu identifizieren.
wenn ich die IDs ändere dann erkennt der script nicht mehr die felder die berechnet werden sollen.
Du musst deine Funktion aktualisieren()
natürlich auch noch anpassen. Wenn deine Selectboxen jetzt bspw. sb1,sb2,sb3 heissen dann musst du auch var obj = document.getElementById('sb' + i);
schreiben.
Nun zu deinem Problem:
Du brauchst eine Funktion, die bei Betätigung der Checkbox aufgerufen wird.
Dieser übergibst du dann die betätigte Checkbox und die dazugehörige Selectbox als Parameter.
Also Funktionsaufruf im handler: handleCheckbox(this, document.getElementById('sb1'));
Die Funktion checked/unchecked die Checkbox, setzt dann die Selectbox auf 0 und rufst aktualisieren()
auf.
Zusammen sieht das dann so aus:
function handleCheckbox(cb, sb) {
sb.disabled = cb.checked ? false : true;
if(!cb.disabled) {
sb.value = 0;
aktualisieren();
}
}
vg ichbinich
Kleiner Tipp:
Tofu schmeckt am besten, wenn man es kurz vor dem Servieren durch ein saftiges Steak ersetzt...