我正在使用一个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>
但这会导致标签和单选按钮也显示在单独的行上,而不是单选按钮和标签在同一行上显示:
第一个对象 第二个对象 第三对象
我想要的是:
它实际上很简单,我的意思是使用主题simple:)
simple
<s:iterator value="myList"> <s:radio theme="simple" name="someNameToSubmit" list="#{id:name}"/><br> </s:iterator>
这将name作为标签和id要提交的属性
name
id