Hallo,
ich habe eine Frage zu meinem Javascriptcode. Ich habe mir mittels Javascript 2 Dropdownmenüs gebaut, eins enthält 2 Datenbanken, wählt man eine Datenbank aus ändert sich das zweite Dropdownmenü mit den entsprechenden Optionen automatisch. Jetzt möchte ich allerdings wenn man im zweiten Dropdownmenü etwas auswählt, dass automatisch die Form submittet wird also meines Wissens im Prinzip onchange="form.submit". Allerdings scheint das nicht zu funktionieren.
Hier mein Code, der liegt teilweise in JSPs daher die out.println davor, ich hoffe ihr könnt es trotzdem nachvollziehen:
Der Javascriptteil
Der Html-Teil:
"optone" ist also das erste Dropdownmenü, wo man die Datenbanken auswählt. "opttwo" ist das zweite was die Form submitten soll, auslesen möchte ich allerdings beide. Ist es richtig, dass ich in Zeile 14 des Html-Teils dann "myform.submit()" aufrufe? Ich kenne mich leider mit Javascript kaum aus....
ich habe eine Frage zu meinem Javascriptcode. Ich habe mir mittels Javascript 2 Dropdownmenüs gebaut, eins enthält 2 Datenbanken, wählt man eine Datenbank aus ändert sich das zweite Dropdownmenü mit den entsprechenden Optionen automatisch. Jetzt möchte ich allerdings wenn man im zweiten Dropdownmenü etwas auswählt, dass automatisch die Form submittet wird also meines Wissens im Prinzip onchange="form.submit". Allerdings scheint das nicht zu funktionieren.
Hier mein Code, der liegt teilweise in JSPs daher die out.println davor, ich hoffe ihr könnt es trotzdem nachvollziehen:
Der Javascriptteil
Java:
out.println("<script language='javascript'>");
out.println("function setOptions(chosen) {");
out.println("var selbox = document.myform.opttwo;");
out.println("selbox.options.length = 0;");
out.println("if (chosen == ' ') {");
out.println("selbox.options[selbox.options.length] = " +
"new Option('Bitte eine Datenbank auswählen',' ');");
out.println("}");
out.println("if (chosen == '1') {");
for(String s : datenbankZugriff.dbzugriff.anfrageTK("pcontrol_pcu_harsum")){
out.println("selbox.options[selbox.options.length] = new");
out.println("Option('"+s+"');");
}
out.println("}");
out.println("if (chosen == '2') {");
for(String s : datenbankZugriff.dbzugriff.anfrageTK("pcontrol_mnb1")){
out.println("selbox.options[selbox.options.length] = new");
out.println("Option('"+s+"');");
}
out.println("}");
out.println("}");
out.println("</script>");
Der Html-Teil:
Java:
out.println("<table border='0'><tr><td align='center'>PControl<br>%s %s</td><td> </td>");
out.println("<form name='myform' action='mitte.jsp' target='frame2'><div align='center'><td>");
out.println("<select name='optone' value='optone' size='1'");
out.println("onchange='setOptions(document.myform.optone.options [document.myform.optone.selectedIndex].value);'>");
out.println("<option value=' ' selected='selected'> </option>");
out.println("<option value='1'>Pcontrol_pcu_harsum</option>");
out.println("<option value='2'>Pcontrol_mnb1</option>");
out.println("</select></td>");
out.println("<td> </td><td> </td>");
out.println("<td><select name='opttwo' value='opttwo' size='1' onchange='myform.submit()>");
out.println("<option value=' ' selected='selected'>Bitte Datenbank auswählen</option>");
out.println("</select></td>");
out.println("</div></form>");
"optone" ist also das erste Dropdownmenü, wo man die Datenbanken auswählt. "opttwo" ist das zweite was die Form submitten soll, auslesen möchte ich allerdings beide. Ist es richtig, dass ich in Zeile 14 des Html-Teils dann "myform.submit()" aufrufe? Ich kenne mich leider mit Javascript kaum aus....