2

我的问题与我正在处理的任何特定代码无关,但更普遍地与构建 Web 应用程序的最佳实践有关,或者更具体地说,与构建特定类型的 Web 应用程序的建议有关我正在努力。在这种情况下,应用程序当前不是根据任何范例(如 mvc)构建的,鉴于它的具体功能,我不知道这是好事还是坏事。

该应用程序允许用户填写动态生成的 Web 表单。在构建这些表单(主要使用 jQuery/AJAX)时,我必须从数据库中提取管理员生成的信息,这些信息指示表单的结构,同时还从数据库中提取用户生成的信息,该数据库使用内容填充表单的输入。我试图在整个代码中保持这两者(结构和内容)在概念上分开(或至少彼此不同),但我意识到要按照我的意愿生成表单,它们必须是混合在一起。

例如,表单本身相对复杂,管理员可以在表单中创建不同的部分,从而允许用户为每个部分填写多个条目(因此,管理员可能会创建一个名为“过去工作”的部分,允许用户使用相同的输入集合添加多个条目)。因此,为了创建表单,我从顶部开始向下处理层次结构:

  1. 使用管理员生成的结构创建表单;
  2. 使用管理员生成的结构创建部分;
  3. (在多条目部分的情况下)使用用户生成的内容创建条目;
  4. 使用管理员生成的结构创建输入;
  5. 使用用户生成的内容填充输入。

这是循环结构和循环内容之间的来回切换,我认为这有点草率,如果不是在概念上,至少在我实现它的方式上。在我看来,切换是必要的,但当谈到如何优雅地进行切换时,我感到很困惑。在这里,我认为学习一两件事关于程序员通常如何构建这些类型的东西会有所帮助(我没有受过专业培训......)是否有一些现有的范式或一些普遍接受的方法可以帮助我保持所有的表单结构的组件与填充它们的用户生成内容分开,同时还促进表单的层次结构?

谢谢。

4

1 回答 1

0

有很多 javascript 框架旨在解决您的问题。签出backbone.js 或knockout.js。两者都很棒。

于 2012-11-14T21:13:56.130 回答