Javascript 是否有需要管理的设计模式;“层叠选择”;容易吗?

Javascript 是否有需要管理的设计模式;“层叠选择”;容易吗?,javascript,design-patterns,hierarchy,cascadingdropdown,Javascript,Design Patterns,Hierarchy,Cascadingdropdown,我正在用HTML和javascript为一些浏览器应用程序制作GUI 目前,我面临的挑战是实现一个页面,其中需要进行三级深度“级联选择”。我只是想知道是否有一种设计模式可以让我的代码更易于管理,因为这不是一个很少见的问题 我需要实现的结构如下: { A => { B => [C, C, ...] } 我将大致使用以下GUI布局(由以下组件制成): 问题是,正如您所看到的,视图的某些部分一直被隐藏/删除,除此之外,我需要在页面的生命周期中存储更改。它不像模型那么简单,因为我不使用只

我正在用HTML和javascript为一些浏览器应用程序制作GUI

目前,我面临的挑战是实现一个页面,其中需要进行三级深度“级联选择”。我只是想知道是否有一种设计模式可以让我的代码更易于管理,因为这不是一个很少见的问题

我需要实现的结构如下:

{ A => { B => [C, C, ...] }
我将大致使用以下GUI布局(由以下组件制成):

问题是,正如您所看到的,视图的某些部分一直被隐藏/删除,除此之外,我需要在页面的生命周期中存储更改。它不像模型那么简单,因为我不使用只是多选来处理一切


您通常如何解决此类问题?

只需将每个列表放入json容器中即可
然后在该列表上放置一个单击侦听器,并将特定的json项添加到下一个列表中

//// PSEUDOCODE ////
var json{
  "a": {
    "a1": {
       "b1": "item",
       "b2": "item",
       "b4": "item"
    },
    "a2": {
     //stuff
    }
   },
   "b":{
     "b1": "items"
      //etc
   }
  }


select(){
 var item = clickedItem.id;
 case: a
   putintoB(json.item)
 case: b
   putintoC(json.item)
}

这不会使很多事情自动化,但对于
Observer
模式来说似乎是个问题

基本上,你会有一个观察者观察第一个选择的动作,而不是另一个观察第二个选择的动作,依此类推

当一个观察者收到通知时,它将采取行动,例如显示另一个选择


这只是一个原始的想法,如果不进一步了解您正在尝试做什么,很难给您提供更详细的建议。

这显然是最基本的,但这对我帮助不大……请尝试将这两个“教程”混在一起。。。希望它能起作用我感谢你的努力,但我的问题远不止于此,我已经知道JSON是如何工作的,我对javascript也很满意。我没有被卡住,我只是想征求关于如何继续这方面的建议,更具体地说,如果存在一个好的设计模式。使用javascript时,你必须经常小心,不要造成内存泄漏。这是我已经决定的,但我希望有更高层次的东西。无论如何谢谢你!