我无法以某种方式存储我为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");
毫无疑问,我可以在这三个选项之间切换并存储值。我可以运行几次构建,并且使用选择的值BUT:如果我再次配置项目,则无论我之前选择什么,总是选择第一个选项。如何使储值出现在这里?
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") )); }
从此处改编,但这是使用全局配置的示例