2010-12-03 13 views
0

Ok,Hinzufügen multidiemnsionall Array <input type = checkbox>

Ich habe meine Form so etwas wie dieses
(HTML-Format)

<input type="checkbox" name="opt[]" value="php echo $option['optionname']?> 

Ich bin Verarbeitung über Option [] als Array und Zur Zeit hat es nur Optionsnamen.

Jetzt möchte ich auch 'optionspreis' hinzufügen. Wie jede Option Benutzer wählen hat einen Preis.

So soll es so etwas wie diese

<input type="checkbox" name="opt[][]" value="php echo $option['optionname'] $option['optionprice'] > 
+1

@user Sollte nicht PHP-Tags wie so gehen: '' –

+0

geht nicht arbeiten. Ihre App kann nicht wissen, wo der Wert aufgeteilt werden soll. Sie müssen etwas mit Javascript tun, wenn Sie es so wollen. Besser wäre ein Redesign mit zB versteckten Eingabefeldern mit den Preisen. –

+0

Sie wissen, dass Sie Schlüsselnamen in HTML-Eingabe-Namen verwenden können - wie 'Name =" opt [Bezeichner] [Preis] "', wobei Bezeichner der Array-Index sein könnte. – TheDeadMedic

Antwort

0

nicht sicher, ob ich völlig verstehe Ihre Frage kommen. Das Eingabeelement hat einen Namen und einen Wert. Sie können zulassen, dass mehrdimensionale Daten eingegeben und auf dem Server analysiert werden. Sie sollten jedoch die Benutzerfreundlichkeit dieses UI-Designs berücksichtigen.

Wenn Sie nach einer Möglichkeit zum Einbetten von Metadaten suchen, werfen Sie einen Blick auf jQuery-Daten. Damit können Sie Daten in das Markup des Elements einbetten und einfach abrufen. Hier ist ein Link

http://api.jquery.com/data/

Hoffnung, das hilft.

Bob

0

Da ich Ihre Frage richtig verstanden: wenn Sie den Preis bereits für jede Option wissen, Sie es nicht über das Formular einreichen müssen. Sie können die ausgewählte Option einfach mit dem Preis in Ihrem Backend abgleichen.

Ansonsten eine Art und Weise mehrdimensionale Arrays durch POST würde zu senden:

<!-- product A with 2 prices --> 
<input type="checkbox" name="opt[productA][]" value="<?php echo $option['productA']['price1']; > 
<input type="checkbox" name="opt[productA][]" value="<?php echo $option['productA']['price2']; > 

<!-- product B with 3 prices --> 
<input type="checkbox" name="opt[productB][]" value="<?php echo $option['productB']['price1']; > 
<input type="checkbox" name="opt[productB][]" value="<?php echo $option['productB']['price2']; > 
<input type="checkbox" name="opt[productB][]" value="<?php echo $option['productB']['price3']; > 
Verwandte Themen