...
- 根据在问题屏幕上输入的其他数据,将字段设为必需字段。
- 根据用户角色或组将字段设置为只读。
- 在提交问题屏幕之前,对现场数据进行服务器端验证。
- 根据其他问题屏幕数据设置字段值。
Behaviour依赖于客户端JavaScript。在大多数环境中,用户可以在浏览器中禁用JavaScript。如果字段的安全性很关键,则Behaviour并不能够真正的防止用户恶意输入数据。
然而,典型的用例是提示用户他们应该根据某些条件输入另一个字段,或者为了清晰起见隐藏一个字段。在这些情况下,用户在行为方面比没有Behaviour的情况要好,也不会比没有Behaviour的情况更糟。
如果某个行为使字段变为只读,则问题历史记录还可以显示该规则是否已被破坏。
这个插件的目的之一是提供一种更结构化、可维护的方法来定制字段,而不是在字段描述中输入javascript。
另一个副作用是Behaviour不能覆盖其他服务器端验证规则,例如字段配置和工作流验证器。例如,如果有一个字段配置,指定一个字段是必需的,则行为不能覆盖该要求。但是,可以选择非必需字段并使其成为必需字段。
另外一个需要说明的是,表单加载到浏览器中后,将从服务器检索字段的行为,这可能会导致应用样式的延迟。
由于JavaScript的限制,在使用远程API时不会强制执行这些Behaviour。
可以在多个上下文中应用多种行为。例如,可能有一个映射到一个项目和所有问题类型的行为,然后有另一个映射到所有项目和一个特定问题类型的行为。
通常,这是可以的,因为所有适用的行为都适用于任何给定的上下文。然而,如果两种行为都试图操纵同一字段,它们就有可能相互矛盾。例如,如果一个行为试图将字段设置为只读,而另一个行为将字段设置为可写,则只有一个行为可以有效。如果两种行为都将字段值设置为特定值,则只应用一种。
如果一种行为看起来不一致,这可能是一个原因。
在这些情况下,为该字段使用一个服务器端行为可能会有所帮助。可以将它映射到每个适用的上下文,然后在一个位置提供一些详细的逻辑,指定在什么情况下应该发生什么。
Behaviour可以应用到“创建问题”、“更新/编辑问题”、“分配问题”和“工作流转换”界面上。
在“查看问题”界面上,尝试使用行为编辑字段将启动“编辑问题”屏幕界面,而不是普通的内联编辑器。
Children Display |
---|