代码之家  ›  专栏  ›  技术社区  ›  Marco Mariani

用于编辑时态表的UI模式

  •  0
  • Marco Mariani  · 技术社区  · 14 年前

    我正在编写一个web界面来编辑几个随时间变化的值(对于每个员工,变化的属性是角色/部门/工作场所/合同类型等),并显示每个变化的历史记录和服务器端验证。

    用户必须能够添加新值、修改以前的值、在期间之间更改日期,等等。我精通Ajax/YUI等,但缺乏UI设计。

    我现在似乎记不起类似的应用程序了,我对纸质原型不满意。

    是一张桌子,多张桌子,一个时间表吗?有多少魔法,在哪里。。

    你知道有什么描述或实现的模式可以看吗?

    编辑 这就是我所做的。

    平视

    [edit]
     from |  to  |  role       | department | contract   | level | ....
    ------+------+-------------+------------+------------+-------+----
     2005 |  ∞   | guru        | Buzz       | consultant |   4   |
     2002 | 2004 | ninja       | Bar        | employee   |   2   |
     2000 | 2002 | code monkey | Foo        | temp       |   1   |
    

    日期表示为年份仅为简洁起见。

    最常见的操作是点击[edit]并添加一组新值:

    [edit]
     from |  to  |  role       | department | contract   | level | ....
    ------+------+-------------+------------+------------+-------+----
     ____ |      | _______     | _______    | _______    | _____ |
    [2005]|  ∞   | guru        | Buzz       | consultant |   4   |
     2002 | 2004 | ninja       | Bar        | employee   |   2   |
     2000 | 2002 | code monkey | Foo        | temp       |   1   |
    

    通过点击[2005],当前值行可以通过选择菜单和日历小部件进行编辑。

    [edit]
     from |  to  |  role       | department | contract   | level | ....
    ------+------+-------------+------------+------------+-------+----
     ____ |      | _______     | _______    | _______    | _____ |
    _2005_| ____ | _guru__     | _Buzz__    |_consultant_|  _4_  |
     2002 | 2004 | ninja       | Bar        | employee   |   2   |
     2000 | 2002 | code monkey | Foo        | temp       |   1   |
    

    服务器接收两行值。要编辑以前的期间,请删除当前期间(可接受的折衷)。

    在这里,我已经有了几个担忧。

    • 一行的“from”值和前一行的“to”值是链接的,如果(且仅当)它们是相同的,则它们将同时更改。用户应该一眼就能看到行之间是否有孔。 (如果与后面的“from”相同,我不会显示“to”,但会显示这样一个箭头——很难看)

    • 不清楚如何终止当前期间(>单击2005,在“to”中写入值)

    • 目前尚不清楚如何删除当前期间(>单击2005,删除“from”值)

    • “无限”的象征既丑陋又不清晰

    • 角色、部门等的验证。。取决于合同,但从用户的角度来看,它们实际上是正交的。其他事情的相关性甚至更小(例如每周工作时间),但仍应一起验证

    • 我认为编辑表格应该是非模态的。。

    1 回复  |  直到 8 年前
        1
  •  0
  •   tathagata    14 年前

    假设一次只编辑一名员工的详细信息,可以在页面顶部显示最新的当前可编辑数据。接下来是列表中更改的历史记录,其中只有来自上一版本的更改可以突出显示。当有人单击其中一个历史记录项时,该项可以展开并可编辑,而当前可编辑项则会折叠。例如,你可以把所有的东西都包在里面 <li> 元素 <ol> 以及扩张/崩溃 <李> s取决于正在编辑的内容。

    抱歉给出了一般性的答案:)如果你能提供更多细节(也许是你做的纸质原型的扫描),我们可以深入研究。