Jsp 在struts2中,从迭代器内的复选框中获取值

Jsp 在struts2中,从迭代器内的复选框中获取值,jsp,checkbox,struts2,iterator,Jsp,Checkbox,Struts2,Iterator,在jsp页面的迭代器中有一个复选框。无论我尝试了什么,复选框标记的属性值都保持为“true”值,即使字段值的值是我想要的值。但我无法找回它。我只知道“真的” <s:iterator id="pieceJointe" value="listePiecesJointesTrouvees"> <tr height="30"> <td> <s:property value="codeDemande

在jsp页面的迭代器中有一个复选框。无论我尝试了什么,复选框标记的属性值都保持为“true”值,即使字段值的值是我想要的值。但我无法找回它。我只知道“真的”

 <s:iterator
    id="pieceJointe"
    value="listePiecesJointesTrouvees">
    <tr height="30">
        <td>
            <s:property value="codeDemande" />
        </td>
        <td
            headers="actions"
            class="center">         
            <s:checkbox 
            value="%{chemin}"
            fieldvalue="%{chemin}"                      
            name="checkbox" /> 
        </td>           
    </tr>
</s:iterator>


使用fieldset属性返回的变量
chemin
就是我想要的。我可以通过Web检查器看到它,但我无法在代码中接受它。我只返回'value'变量的值,该值非常“true”值。

当使用
迭代器
标记用诸如checkbox之类的输入元素填充页面时,您可以使用
value
属性预选checkbox的状态。
fieldValue
不同,它用于设置生成的HTML复选框的实际值,但它是一个复合标记,与HTML复选框标记一起,它还生成一个隐藏字段并将字段值设置到其中。因此,您不必对列表中的值使用
value
fieldValue

再次使用
iterator
标记列表和提交这些值的要求。您应该使用索引属性名。此索引名称用作请求中的参数名称,并允许通过action类的list属性填充

<s:iterator
    id="pieceJointe"
    value="listePiecesJointesTrouvees" status="status">
    <tr height="30">
        <td>
            <s:property value="codeDemande" />
        </td>
        <td
            headers="actions"
            class="center">         
            <s:checkbox 
            value="%{chemin}"
            name="listePiecesJointesTrouvees[%{#status.index}].chemin" /> 
        </td>           
    </tr>
</s:iterator>  



确保使用默认的拦截器堆栈,其中包括。此拦截器用于填充未检查的值。

您的值与fieldvalue相同,这两个字段使用相同值的原因是什么?显示您的操作;同时,阅读并获取有关复选框如何工作的一些提示