Jenkins插件下拉菜单

时间:2014-09-01 15:01:07

标签: jenkins jenkins-plugins jelly

不知何故,我无法存储下拉菜单中的值,我添加到我的Jenkins插件的jelly.xml中。另一方面,文本字段工作得很好

果冻:

<f:entry title="Catch+ Version" field="selection">
  <f:select/>
</f:entry>

我没有向数据绑定构造函数添加任何内容。也许这已经成了问题。我不知道如何添加它,因为它不是字符串而是列表?!

所以我只添加了doFillSelectionItems函数,它可以正常工作。

public ListBoxModel doFillSelectionItems()
{
    return new ListBoxModel(new Option("1.13", "1.13"),
                    new Option("1.14", "1.14"),
                    new Option("1.15", "1.15"));
}

以及save()之前的configure方法:

catchVersion = formData.getString("selection");

我可以在三个选项之间进行更改并保存值,毫无疑问。我可以多次运行构建并使用所选值,但是:如果我再次配置项目,则无论我之前选择了什么,总是选择第一个选项。如何使存储的值显示在此处?

1 个答案:

答案 0 :(得分:2)

Option构造函数有第三个参数,用于定义当前选择。您还可以传递

中的当前值
public ListBoxModel doFillSelectionItems(@QueryParameter String selection) {
    return new ListBoxModel(new Option("1.13", "1.13", selection.matches("1.13") ),
                    new Option("1.14", "1.14", selection.matches("1.14") ),
                    new Option("1.15", "1.15", selection.matches("1.15") ));
}

改编自here,但这是使用全局配置

的示例