通常我们有很多页面有时应该在查看模式下可用,有时在编辑模式下可用。更糟糕的是,有时只有其中的一些字段是可编辑的。
是否有任何设计模式和最佳实践?一种解决方案是创建 2 个页面 - 一个用于查看,一个用于编辑。另一种是应用 css 样式使所有输入看起来像普通的不可编辑文本。还有其他更好的吗?
通常我们有很多页面有时应该在查看模式下可用,有时在编辑模式下可用。更糟糕的是,有时只有其中的一些字段是可编辑的。
是否有任何设计模式和最佳实践?一种解决方案是创建 2 个页面 - 一个用于查看,一个用于编辑。另一种是应用 css 样式使所有输入看起来像普通的不可编辑文本。还有其他更好的吗?
在我们的应用程序中,页面上的编辑器元素具有“只读”属性,它们会相应地修改 DOM。因此,当组件可编辑时,您将获得一个span
(或组件在只读模式下使用的任何内容)或一个input
元素。
在服务器上,这是由 DSL 控制的,该 DSL 定义了您编辑的对象类型、您可以看到的字段以及每个字段的模式。
整个应用程序是基于ZK的,因为它可以很容易地从 Java 代码中替换部分 DOM。
我不会采用您的两页方法。让我们举个例子,页面上有 10 个字段。对于不同的请求(例如不同的用户权限、角色或其他功能),您可以呈现包含不同可编辑字段集的页面。
request1, field 1,2,3 should be editable
request2, field 2,3 should be editable
request3, field 3,6,7 should be editable
...
您将如何在多页方法中处理这个问题?
我会在服务器端制作一个列表,其中包含需要显示为可编辑的字段(例如名称)。
在您的jsp中,当您打印字段时,您检查该字段是否在该列表中,如果为真,则将其显示为可编辑,否则显示为只读。
希望能帮助到你