Struts2如何通过迭代列表来创建表,使每行都有一个单选按钮?

Struts2如何通过迭代列表来创建表,使每行都有一个单选按钮?,struts2,radio-button,html-table,Struts2,Radio Button,Html Table,我正在尝试创建一个表,以便使用迭代器在action类的列表上显示一些数据。每行都具有列表中每个对象的属性 <table class="TableA" cellpadding="5px" border="1"> <tr class="even"> <th></th> <th>Col1</th> <th>Col2</th> </tr> <s:iterator va

我正在尝试创建一个表,以便使用迭代器在action类的列表上显示一些数据。每行都具有列表中每个对象的属性

<table class="TableA" cellpadding="5px" border="1">
<tr class="even">
    <th></th>
    <th>Col1</th>
    <th>Col2</th>
</tr>
<s:iterator value="objectList" status="obj">
    <tr
        class="<s:if test="#obj.odd == true ">odd</s:if><s:else>even</s:else>">
        <td></td>
        <td><s:property value="objId" /></td>
        <td><s:property value="objValue" /></td>
    </tr>
</s:iterator>

可乐
可乐

我需要一个单选按钮在每一行的第一个单元格,以便一行可以选择编辑或删除。 我知道这可以通过
实现。但我需要用struts2的无线电标签。但使用此标记的问题在于,它会为每个无线电标记生成一行(请参阅)

可能吗?如果是,那么如何进行?

Kaillash: 如果我完全理解您的要求,那么您的意思是,当使用struts2单选按钮显示页面时,struts2会自动为每个单选按钮创建一行

如果这种情况不是默认的struts2功能,那么struts2将对模板主题进行操作,默认主题(xhtml)将自动为每个struts2标记生成一些HTML标记

如果您希望struts2标记不生成任何额外标记,请使用简单的主题

<s:radio key="personBean.gender" list="genders" theme="simple" />

我希望这将对您有所帮助

我认为以下语法更适合您,因为您希望使用单选按钮选择每一行

<s:radio theme="simple" name="object_radio" list="#{objId:objId}"/>

这样,您就不需要objId列了
此语法将objId作为所选单选按钮的值提交。您可以修改语法以更改单选按钮的显示属性,或将其设置为空白。anu,您的回答对我帮助很大。 这个链接对我也有很大帮助:

我需要的是一个表格,其中两列是单选按钮,但每列都是一个独立的组。此外,我不想将键显示为每个单选按钮的标签/值,因为该信息显示在其他列中。我的行是在hashmap上迭代构建的,其中hashmap的键是单选按钮值

<s:iterator value="myHashMap">
<tr>
  <td><s:radio name="selectedRadioValueFirstColumn"  list="#{key:''}"/></td>
  <td><s:radio  name="selectedRadioValueSecondColumn" list="#{key:''}"/></td>
<%--....... (my other columns) .... --%>
<tr>

因此,我将选项值设置为hashmap的键,所选值将存储在字符串属性“selectedRadioValueFirstColumn”和“selectedRadioValueSecondColumn”中。

如果使用,那么是否可以在action类中获取所选行的关联值?
<s:iterator value="myHashMap">
<tr>
  <td><s:radio name="selectedRadioValueFirstColumn"  list="#{key:''}"/></td>
  <td><s:radio  name="selectedRadioValueSecondColumn" list="#{key:''}"/></td>
<%--....... (my other columns) .... --%>
<tr>