2013-04-09 71 views
0

我想創建一個選項,其中有選項和子選項。如何使用子選項做選項?

例如,如果我有類似的像形式這一個:

<form method="post" action="processor.php"> 
    <select name="mySelect"> 
    <option value="1">Parent option 1</option> 
     <option value="1">Child option 1 of parent 1</option> 
     <option value="2">Child option 2 of parent 1</option> 
     <option value="3">Child option 3 of parent 1</option> 
    <option value="2">Parent option 1</option> 
     <option value="1">Child option 1 of parent 2</option> 
     <option value="2">Child option 2 of parent 2</option> 
     <option value="3">Child option 3 of parent 2</option> 
    </select> 
    <input type="submit" value="Send" /> 
</form> 

當用戶選擇Parent 1選項我想,我收到這樣一個陣列:

array(
    "parent" => "1" 
); 

當選擇Child option 3 of parent 2選項時,我會收到一個數組,例如:

array(
    "parent" => "2" 
    "child" => "3" 
); 

我該如何執行此操作?我可以發送類似parent_2|child_3的東西並爆炸,但我認爲這不是最好的方法。

+0

https://developer.mozilla.org/en-US/docs/HTML/Element/optgroup – PeeHaa 2013-04-09 20:09:27

回答

2

<select>標記不支持嵌套選項。它支持groups,但不是真正的層次結構。

有可用的基於JavaScript的替換,它們使用嵌套列表來執行相同類型的功能。你可能希望探索這個選項。

0

嘗試使用「<ul>」標籤,而不是「<select>」再放入一些的jQuery或JavaScript和CSS做動畫(隱藏,顯示)的事然後提交使用javascript獲取選定的值或做這樣的:

Best way to submit UL via POST?

乾杯!

0

我想你會從基於JavaScript的樹控件而不是選擇器中受益更多。您可以擁有無​​限級別的層次結構,而選擇機制幾乎就是您要找的。

您看過嗎,例如DHTMLX Tree