0

我现在正忙于制作一个具有不同类别以及不同父 ID 的网上商店。我的数据库结构如下:

id - 姓名 - 父母 ID:

1 - 游戏 - 0

2 - 电影 - 0

3 - 类型 - 1

4 - 类型 - 2

5 - 行动 - 3

6 - 历史 - 4

现在在管理部分中,当我想添加一个类别时,我想在下拉列表中显示我的所有类别,但我希望将父级和子级分开。是否有捷径可寻?

问候埃里克

4

1 回答 1

1

我不确定您所说的“希望将父 ID 和子 ID 分开”是什么意思。了解 a 中的元素select只不过是一个显示值和一个数据值,而数据值将与字段名称一起发送到服务器。

所以select不能真正区分多种数据值。例如,每个option人都不能有多个 ID。您所能做的就是格式化您的显示值以包含 ID(例如您使用“1 - 游戏 - 0”等),并决定哪个数据值应该optionselect.

可以做的一件事是使用标签option对元素进行分组。像这样的东西:optgroup

<select name="myOptions">
  <optgroup label="Category 1">
    <option value="1">First Choice</option>
    <option value="2">Second Choice</option>
    <option value="3">Third Choice</option>
  </optgroup>
  <optgroup label="Category 2">
    <option value="4">Fourth Choice</option>
    <option value="5">Fifth Choice</option>
  </optgroup>
  <optgroup label="Category 3">
    <option value="6">Sixth Choice</option>
    <option value="7">Seventh Choice</option>
  </optgroup>
</select>

在验证中,浏览器不应该允许用户选择一个组,他们必须选择一个实际的选项。所以你不应该担心这个。这确实为更分层地显示您的值提供了一些额外的灵活性。但是,请理解在这种情况下只允许一级选项嵌套。(所以一个optgroup不能包含另一个optgroup。)

于 2012-05-23T20:01:18.977 回答