phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?Re:_=5Bphp=5D_Formularfeld_=FCbergeben_mit_JS?=

[php] Re: [php] Formularfeld übergeben mit JS

Carsten Sierks php_(at)_phpcenter.de
Fri, 10 May 2002 11:31:44 +0200


Hi Jan,
> Meine Idee wäre jetzt alles per javascript zu markieren in dem moment wo
> es abgeschickt wird. Das ganze Select mit dem Namen f6[] versehen und
> schon hätte ich ein array. Nun ist aber das Problem das das Javascript
> den Feldnamen f6[] nicht mag. Wie kann ich denn am einfachsten dieses
> Problem lösen? Denn ich brauche nunmal alle Einträge auf der nächsten
> Seite.
>
ich würde folgendermassen vorgehen:

1. Ein hidden-Formular-Feld. Dieses enthält den String: "[{index :0, text:
'text1', value: 'value1', selected: false},{....},...]"

Wenn man diesen String mit eval("select_field="+string) bearbeitet, erzeugt
man eine Variable select_field die ein Array mit Objekten ist, diese Objekte
kennen die Keys index, text, value, selected.

2. Wenn ein User per Java-Script die Reihenfolge ändert, den String
entsprechend anpassen.

3. Um das ganze u.U. performanter zu gestalten, erzeugst du dir in der
Formular-Seite ein Array, in dem die Object-Teile des Strings drin stecken.
Beim verschieben tauscht du dann in dem Array und beim Submit machst du ein
"["+array.join(",")+"]" um dann den evaluierbaren String zu erhalten.


Carsten


php::bar PHP Wiki   -   Listenarchive