不知何故,我无法存储下拉菜单中的值,我添加到我的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");
我可以在三个选项之间进行更改并保存值,毫无疑问。我可以多次运行构建并使用所选值,但是:如果我再次配置项目,则无论我之前选择了什么,总是选择第一个选项。如何使存储的值显示在此处?
答案 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,但这是使用全局配置
的示例