如何在果冻<f:select/>中实现无选择?
How to achive no selection in jelly <f:select/>?
在config.jelly中,我有:
<f:entry field="field1">
<f:select/>
</f:entry>
以及相应的 java 代码,用值填充上述组件:
public ListBoxModel doFillField1Items() {
...
}
当用户进入配置页面时,字段field1
填充方法doFillField1Items()
提供的第一个值。
还有我的问题:
是否可以配置(在果冻或 java 中)此 <f:select/>
组件最初没有选择字段 field1
.
从HTML的角度来看,没有"no selection"这样的东西。 <select>
标签如果有任何 <option>
可用则将被 selected。 "nothing is selected" 的唯一方法是从中删除所有选项。
我不了解 Jelly,但您可能想要实现这样的代码:
<select required>
<option selected disabled value="">No option selected</option>
<option>Option 1</option>
<option>Option 2</option>
</select>
上面的代码会告诉浏览器预先 select 选项 "No option selected",但是因为它被禁用,所以在更改 selection 之后用户将无法选择回来 "No option selected".添加到 <select>
和 <option value="">
的组合 required
属性将强制用户制作一个 selection(理论上),否则 <form>
(假设你有一个)将有效。
在config.jelly中,我有:
<f:entry field="field1">
<f:select/>
</f:entry>
以及相应的 java 代码,用值填充上述组件:
public ListBoxModel doFillField1Items() {
...
}
当用户进入配置页面时,字段field1
填充方法doFillField1Items()
提供的第一个值。
还有我的问题:
是否可以配置(在果冻或 java 中)此 <f:select/>
组件最初没有选择字段 field1
.
从HTML的角度来看,没有"no selection"这样的东西。 <select>
标签如果有任何 <option>
可用则将被 selected。 "nothing is selected" 的唯一方法是从中删除所有选项。
我不了解 Jelly,但您可能想要实现这样的代码:
<select required>
<option selected disabled value="">No option selected</option>
<option>Option 1</option>
<option>Option 2</option>
</select>
上面的代码会告诉浏览器预先 select 选项 "No option selected",但是因为它被禁用,所以在更改 selection 之后用户将无法选择回来 "No option selected".添加到 <select>
和 <option value="">
的组合 required
属性将强制用户制作一个 selection(理论上),否则 <form>
(假设你有一个)将有效。