2

如标题所述,我正在寻找一种智能、安全且有效的方法来将JIRA 中的Number Field设置为Read-Only。以下是试图实现这一目标的方法、指南和插件的简短列表。

  • 安装并部署了行为插件
    • 这导致整个 JIRA 的表单权限错误,将一些最基本和可编辑的字段设置为不可写。进一步调查显示,这是一个已知问题,不会很快得到解决。
  • 我对 JIRA 现有的字段行为的选项进行了上下调整,它根本不提供将字段设置为只读的选项。
    • 隐藏不是一种选择,因为该字段需要可见(更多信息见下文)。
  • 一个可能的选择是创建一个新的屏幕方案,该方案只是将该字段从编辑屏幕中排除。
    • 将新的屏幕方案与我们当前的项目相关联将是一场小灾难,因为许多其他项目都是依赖和共享的。因此,在这种情况下,将字段设置为只读或仅管理员可写将是一个更好的解决方案。

关于自定义字段:我在当前项目的工作流程中创建了一个发布功能,每次重新打开问题/任务/错误时,都会将自定义数字字段增加 1。从本质上讲,我正在跟踪重新开放的数量。这让我想到了只读要求的原因。开发人员不应该能够更改此字段的值,因为它会抛出统计信息。

4

3 回答 3

0

您可以使用 jquery 使字段只读,添加到字段描述:

<script type="text/javascript">
  AJS.$(document).ready(function() {
    AJS.$("#customfield_10000").attr("readonly", true);
  });
</script>

更改customfield_10000为您的自定义字段 ID。您可以通过查看问题编辑页面源并检查它具有哪个 id 来找到此 id。

查看答案以及此以获取更多详细信息。

[更新]

要同时禁用悬停编辑功能,您可以将以下脚本添加到 jira 中Announcement Banner,这样它将在每个屏幕上运行:

<script type="text/javascript">
  AJS.$(document).ready(function() {
    AJS.$("#customfield_10000").attr("readonly", true);
    AJS.$("#customfield_10000").removeClass("editable-field inactive");
    AJS.$("#customfield_10000 .icon-edit-sml").remove();
  });
</script>
于 2013-02-06T07:44:55.670 回答
0

停止内联编辑工作似乎更棘手。是什么阻止了 Behaviors 插件为您工作,您有已知问题的链接吗?您没有列出的一个选项是创建一个新的自定义字段类型,它扩展了熟悉的数字自定义字段类型,但在其速度模板中限制了谁可以编辑该字段。这种自定义记录在https://developer.atlassian.com/display/JIRADEV/Creating+a+Custom+Field+in+JIRA以及 Practical JIRA Plugins (O'Reilly)

于 2013-02-07T01:46:48.053 回答
0

在表单项中使用“禁用”关键字。例如代码: <input type="text" name="foo" value="bar" disabled>

于 2013-02-07T01:51:18.227 回答