【发布时间】:2015-03-18 20:57:43
【问题描述】:
我有一个这样的菜单结构:
1. Option A
1.1 Option B
1.1.1 Option C
1.1.2 Option D
1.2 Option C
1.2.1 Option B
1.2.2 Option D
1.3 Option D
1.3.1 Option B
1.3.2 Option C
2. Option B
2.1 Option A
2.1.1 Option C
2.1.2 Option D
2.2 Option C
2.2.1 Option A
2.2.2 Option D
2.3 Option D
2.3.1 Option A
2.3.2 Option C
3. Option C
3.1 Option A
3.1.1 Option B
3.1.2 Option D
3.2 Option B
3.2.1 Option A
3.2.2 Option D
1.3 Option D
3.3.1 Option A
3.3.2 Option B
4. Option D
4.1 Option A
4.1.1 Option B
4.1.2 Option C
4.2 Option B
4.2.1 Option A
4.2.2 Option C
4.3 Option C
4.3.1 Option A
4.3.2 Option B
我为什么要这样做? - 此菜单用于选择选项组合A,B,C,D,其中所选选项的顺序很重要。
例如:用户点击菜单项 2.3.1。这导致组合B-D-A。
现在,您知道我目前在理论上是如何做到的。实际上,还有更多的选择可以组合。但是只能同时组合三个。
问题是我必须在显示菜单之前创建所有菜单项(三层深)。
有没有办法在需要时(即应该显示它们的时候)添加子菜单项?
【问题讨论】:
-
您可以一次创建所有子菜单项,然后在用户单击菜单项时隐藏/显示您需要的子菜单项。
-
@DalijaPrasnikar 澄清这一点:我想避免创建最终可以使用的所有项目,而只创建需要的项目(因为用户会弹出他们的父项目)。
-
你用这个解决的实际问题是什么?看起来像是一种“专家系统”?这个问题有多动态?是否还有许多由运行时确定的选项的树?