javascript - 如何在 Struts2 迭代器中显示预选复选框

标签 javascript checkbox struts2 struts-tags

我将列表显示为复选框。在此,应根据数据库值预先选中一些复选框。 如果我使用复选框列表,我可以实现这一点,但我只能在复选框后显示一个属性(listValue)。我需要在复选框后显示多个属性。

<s:checkboxlist list="myList" name="checkboxes" listKey="id" listValue="name" value="selectedList"/>

这里 myList 有可用的复选框,selectedList 包含应该预先检查的键

那么如何使用迭代器中的复选框实现相同的功能...? 我试图显示可用复选框的代码是...

<s:iterator value="myList" var="record">
  <s:checkbox name="id" value="%{#record.id}"/>
  <s:property value="#record.name"/>
  <s:property value="#record.description"/>
</s:iterator> 

最佳答案

使用 <s:checkboxlist>标记,您可以简单地连接 listValue 中的属性属性。

<s:checkboxlist list="myList" 
                name="checkboxes" 
                listKey="id" 
                listValue="name +' '+ description" 
                value="selectedList" />

如果您更喜欢自己遍历列表,请使用列表的 contains将一些复选框设置为已选中的方法。

请注意 value <s:checkbox> 的属性标签用于设置复选框是否被选中。要设置将发送到服务器的值,您需要使用 fieldValue属性。

<s:iterator value="records" var="record">
    <label>
        <s:checkbox name="id" 
                    fieldValue="%{#record.id}" 
                    value="selectedList.contains(#record.id)" />

        <s:property value="#record.name" />
        <s:property value="#record.description" />
    </label>
</s:iterator>

不要忘记标签,通过使用它们,您可以通过单击标签文本来选中复选框。

关于javascript - 如何在 Struts2 迭代器中显示预选复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32614461/

相关文章:

javascript - 如何在ie9或ie8中通过javascript读取本地镜像文件?

excel - 检查是否选中基于工作表的复选框

当要发送的请求是多部分请求时,Spring CSRF token 不起作用

java - Struts2 文本字段中的 Onchange

javascript - IE8 中的 JQuery AJAX 文件下载,显示黄色安全栏

javascript - 我可以在 ReactJS 中嵌入原始元素的子元素吗?

javascript - 压缩整个网页(HTML 和 JS)

jquery - HTML5/CSS3 - 复选框图像?

javascript - 防止代码被利用,保护 Javascript 和表单

java - Tomcat 6.0 碧 Jade 异常