【问题标题】:Getting value from s:select inside an iteration在迭代中从 s:select 获取值
【发布时间】:2015-11-19 11:51:17
【问题描述】:

我在jsp中迭代一个列表对象,我想在提交表单时获取<s:select>的值。 我的jsp是这样的:

<s:iterator value="listeTypeEvent" status="event">
    <tr>         
        <td>
            <s:select id = "criticite" 
                    list = "criticite" 
                    name = "degreCriticite"  
                   value = "%{event.degreCriticite}"/>
        </td>
        <td> 
            <s:select id = "famlle"  
                    list = "listFamille" 
                    name = "familleEvent.idFamille"  
                 listKey = "idFamille" 
               listValue = "libelleFamille" 
                   value = "%{event.idFamille}"/>
        </td>  
    </tr>
</s:iterator>

【问题讨论】:

  • 你好,我是这样的问题,但我没有传递值,我的问题是列表属性......它在动作类中但它没有到达渲染跨度>

标签: java html jsp struts2 struts-tags


【解决方案1】:

错误是问题中的代码混淆了status(它实例化了一个IteratorStatus 对象,并且没有degreCriticite 也没有idFamille 属性)和var(实例化一个包含迭代中的当前元素)。

另一个小错误是id 在 HTML 页面中必须是唯一的。

在迭代中创建的元素的返回值的缺失部分是创建索引(通过前面提到的 IteratorStatus 对象的帮助):

<s:iterator value="listeTypeEvent" var="event" status="ctr">
    <tr>         
        <td>
            <s:select id = "criticite_%{#ctr.index}" 
                    list = "criticite" 
                    name = "degreCriticite[%{#ctr.index}]"  
                   value = "%{event.degreCriticite}"/>
        </td>
        <td> 
            <s:select id = "famlle_%{#ctr.index}"  
                    list = "listFamille" 
                    name = "familleEvent[%{#ctr.index}].idFamille"
                 listKey = "idFamille" 
               listValue = "libelleFamille" 
                   value = "%{event.idFamille}"/>
        </td>  
    </tr>
</s:iterator>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-06
    • 2012-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多