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并爆炸的东西,但我认为这不是最好的方法。

4

3 回答 3

3

<select>标签不支持嵌套选项。它支持,但不是真正的层次结构。

有可用的基于 JavaScript 的替换,它们使用嵌套列表来执行相同类型的功能。您可能希望探索此选项。

于 2013-04-09T20:10:18.333 回答
0

尝试使用“ <ul>”标签而不是“ <select>”然后放一些 jquery 或 javascript 和 CSS 来做动画(隐藏、显示)的事情然后在提交时使用 javascript 获取选定的值或这样做:

通过 POST 提交 UL 的最佳方式?

干杯!

于 2013-04-09T20:21:06.983 回答
0

我认为您将从基于 javascript 的树控件而不是选择器中受益更多。您可以拥有无​​限的层次结构,并且选择机制几乎就是您要寻找的。

例如,您是否看过 DHTMLX Tree

于 2013-04-09T20:22:33.020 回答