Vor submit mehere listbox selektieren
nik
- javascript
Hallo
Ich habe eine Funktion, mit welcher ich werte von listbox1[] zu listbox2[] verschieben kann und vice versa. Da ich die Werte, welche in listbox2[] sind per POST-form übergeben möchte, habe ich ein Javascript geschrieben, welches die werte in listbox2 vorher selektiert und erst dann per submit abschickt. Dies funktioniert alles wunderbar.
Nun mein Problem:
Beim Submit-Button habe ich ein Javascript welches mir die Werte in listbox2[] selektiert...onClick=".....this.form.listbox2[]"...
Wie ist es nun möglich, mehere listboxen bei dieser Funktion zu übergeben, so dass ich die Werte in mehreren listboxen selektieren kann?
Ich weiss, dass ich ein array in javascript via [] übergeben kann. es funktioniert jedoch nicht.-> [this.form.listbox2[], this.form.listbox4]
Vielen Dank für die Hilfe.
Nik
Wie ist es nun möglich, mehere listboxen bei dieser Funktion zu übergeben, so dass ich die Werte in mehreren listboxen selektieren kann?
Ich weiss, dass ich ein array in javascript via [] übergeben kann. es funktioniert jedoch nicht.-> [this.form.listbox2[], this.form.listbox4]
Struppi.
Hallo
Nun ich versuch's nochmal.
Das ist der Ursprungscode:
<html>
<head>
<script language="JavaScript1.1">
<!--
function select_all(o,n, vt){
for (var i=0; i < vt.length;i++){
for (var j=0; j < vt[i].options.length;j++){
vt[i].options[j].selected = n;
}
}
}
//-->
</script>
<title></title>
</head>
<body>
<form name="formular" method="post" action="(Empty Reference!)">
<select name="t" size="5" multiple="multiple">
<option>Eins </option>
<option>Zwei </option>
<option>Drei </option>
<option>Vier </option>
<option>Fünf </option>
</select>
<select name="s" size="5" multiple="multiple">
<option>Eins </option>
<option>Zwei </option>
<option>Drei </option>
<option>Vier </option>
<option>Fünf </option>
</select>
<br>
<input type="button" name="r" value="select all"
onclick="select_all(this,1, [this.form.s, this.form.t])"> <input
type="button" name="r" value="deselected" onclick="select_all(this,0)">
</form>
<br>
</body>
</html>
Ich möchte nun, dass ich den Namen der Arrays in t[] und s[] umwandeln und an das Javascript übergeben kann. Wenn ich die Namen ändere kommt Fehler in Zeile ....onclick="select_all(this,1, [this.form.s[], this.form.t[]])"> <...
Was wäre die richtige Schreibweise?
Danke für die Hilfe.
Ich möchte nun, dass ich den Namen der Arrays in t[] und s[] umwandeln und an das Javascript übergeben kann. Wenn ich die Namen ändere kommt Fehler in Zeile ....onclick="select_all(this,1, [this.form.s[], this.form.t[]])"> <...
Du willst dieses PHP Konstrukt verwenden und hast Probleme diese in JS anzusprechen.
Dazu musst du lediglich deine Schreibweise ändern.
this.form.elements['name']
Struppi.
Hallo
Ich habe den Code wie empfohlen geändert.
Leider erschien trotzdem noch eine Fehlermeldung:
Line: 8
Char: 17
Error: 'options' ist Null oder kein Objekt
Irgendwie scheint das Objekt nicht vorhanden zu sein. Weisst Du, wie man das Problem löst?
Besten Dank
Nik
Der Code sieht wie folgend aus:
<SCRIPT LANGUAGE="JavaScript1.1">
<!--
function select_all(o,n, vt){
for (var i=0; i < vt.length;i++){
for (var j=0; j < vt[i].options.length;j++){
vt[i].options[j].selected = n;
}
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<FORM name="formular" METHOD="POST" ACTION="">
<SELECT NAME="t[]" size="5" multiple>
<option>Eins
<option>Zwei
<option>Drei
<option>Vier
<option>Fünf
</SELECT>
<SELECT NAME="s[]" size="5" multiple>
<option>Eins
<option>Zwei
<option>Drei
<option>Vier
<option>Fünf
</SELECT>
<br>
<INPUT TYPE="button" NAME="r" value="select all" onClick="select_all(this,1, [this.form.elements['s'], this.form.elements['t']])">
<INPUT TYPE="button" NAME="r" value="deselected" onClick="select_all(this,0)">
</FORM>
</BODY>
</HTML>