我想创建一个包含选项和子选项的选择。
例如,如果我有一个类似这样的表格:
<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 :(得分:2)
<select>
标记不支持嵌套选项。它支持groups,但不支持真正的层次结构。
有一些基于JavaScript的替代品可以使用嵌套列表来执行相同类型的功能。您可能希望探索此选项。
答案 1 :(得分:0)
尝试使用“<ul>
”代码而不是“<select>
”,然后将一些jquery或javascript和CSS用于动画(隐藏,显示),然后使用javascript提交获取选择值或执行它是这样的:
Best way to submit UL via POST?
喝彩!
答案 2 :(得分:0)
我认为你会从基于javascript的树控件而不是选择器中获益更多。你可以拥有无限级别的层次结构,而选择机制几乎就是你正在寻找的东西。
您是否看了一下,例如DHTMLX Tree?