我正在使用一个 struts 单选标记,该标记填充有具有两个字段的对象列表:
class MyAction {
List<MyObject> myList;
String selectedId
public String execute() {
...
myList = new ArrayList<MyObject>();
myList.add(new MyObject("1","first object");
myList.add(new MyObject("2","second object");
myList.add(new MyObject("3","second object");
...
}
// Getters and Setters for myList & selectedId
...
}
class MyObject {
String id;
String name;
MyObject(String id, String name) {
this.id = id;
this.name = name;
}
// Getters and Setters for id & name
...
}
这是我在页面上用来显示单选按钮列表的内容
<s:radio key="selectedId" list="myList" listKey="id" listValue="name"/>
但是,这会产生一个单选按钮的水平列表。我尝试为它们添加一个 css 样式:
<style>
.vertical input { display: block; }
</style>
但这会导致标签和单选按钮也显示在不同的行上,而不是单选按钮和标签显示在同一行上:
first object second object third object
我想要的是:
first object second object third object
最佳答案
其实很简单,我的意思是使用主题 simple
:)
<s:iterator value="myList">
<s:radio theme="simple" name="someNameToSubmit" list="#{id:name}"/><br>
</s:iterator>
这将使 name
作为标签,id
作为要提交的属性
关于java - 如何让Struts单选标签创建单选按钮的垂直列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5809211/