Bei OnChange-Event Wert setzen

ahykes

Erfahrenes Mitglied
Hallo Gemeinde! ;-]

Ich habe eine Seite auf der sich ein Listenfeld befindet. Neben dem Listenfeld liegt ein HIDDEN-Textfeld, indem die passende ID zum Inhalt des Listenfelds liegt. :rolleyes:

Soweit so gut. Wenn ich nun den Wert im Listenfeld ändere soll sich die ID im HIDDEN-Textfeld daneben direkt auch ändern...natürlich passend
;-)
Habt Ihr eine Idee für JACK? :p
 
Wer ist Jack?

Jedenfalls: vielleicht meinst Du so etwas:
HTML:
<form name="form1" method="post" action="">
<input type="hidden" name="hiddenField">
<select name="select" onChange="this.form.hiddenField.value = this.value">
<option value="123">123</option>
<option value="456">456</option>
<option value="789">789</option>
</select>
</form>
?

Gruß

.
 
Genau so hatte ich mir das auch schon vorgestellt! :rolleyes:

Danke schonmal. Aber leider funktioniert es bei mir nicht, weil das hidden-texfield keinen wirklichen Namen hat sondern ein Array darstellt. Das sieht dann bei der "Deklaration" so aus :

HTML:
<input name="produktid[]" type="hidden" size="5">
:p


Un nu? Wie könnte man das bloß lösen..? ich habe mal das mal so probiert, aber das auch nett wirklich. dann kriege ich einen sog. Laufzeitfehler :

HTML:
<select name="select" onChange="this.form.produktid[].value = this.value">

Hat einer eine Idee? Vielen Dank schonmal für Eure Hilfe..

Achja -> Kennste nicht JACK? Das ist der Typ aus dem Film "Nightmare before Christmas". Der sieht so aus, wie mein Bild ;-]
 
Hi,

versuchs mal hiermit
Code:
<select name="select" onChange="this.form.elements['produktid[]'].value = this.value">
Ciao
Quaese
 
Vielen Dank, aber leider bekomme ich immernoch einen Laufzeitfehler. Das finde ich echt seltsam. Kann das daran liegen, weil ich das Feld per PHP generiere ? Der Quelltext sieht wie folgt aus :

PHP:
echo '<select name="select" onChange="this.form.elements[`produktid[]`].value = this.value">' 
.'<option selected>'

Das ganze steht in einer Schleife, in der Werte aus einer Datenbank in dieses Listenfeld "geschrieben" werden. :eek: Das Ganze ist also ein JavaScript / PHP - Problem.
 
Fragen wir mal anders herum :

Ist es möglich per onchange einen PHP-Befehl auszuführen? Dann könnte ich sagen :

Code:
onchange="query(Ordne dem inhalt des Listenfeldes, die Passende ID zu und schreib Ihn ins hidden-textfield)
;-]
 
Hi,

wenn Du den onchange-Event mit PHP schreibst, musst Du die Hochkommata (single quotes)
escapen.
Code:
echo '<select name="select" onChange="this.form.elements[\'produktid[]\'].value = this.value">'
.'<option selected>'
Ciao
Quaese
 
Tja nun bin ich hingegangen und habe folgendes gemacht :

HTML:
<select name="select[]" onChange="this.form.elements[\'produktid[0]\'].value = 123">

Ich will also bei einem Change des Listenfeldes den statischen Wert 123 in das Feld schreiben. Aber das klappt einfach nett. :rolleyes:

Was mache ich falsch? :suspekt:
 
Zurück