我这个例子主要是得到从后台返回的结果反映在前台的checkbox上。
在后台action中首先应该有一个List,用于前天checkbox的迭代:
private List<PropertyBean> propertyList;
PropertyBean有propertyId和propertyName两个属性。另外一点需要注意的是在action中需要记得给propertyList set和get方法。要不然在前天就取不到值了。
private RoomBean room = new RoomBean();//记得set,get方法
room.setPropertyId("1,2");
因为property可能是多个值,所以保存在后台的就可能是1,2这种形式的。
PropertyBean p1 = new PropertyBean();
p1.setPropertyId("1");
p1.setPropertyName("pname1");
PropertyBean p2 = new PropertyBean();
p2.setPropertyId("2");
p2.setPropertyName("pname2");
propertyList.add(p1);
propertyList.add(p2);
我在这里是给propertyList设定了两个值,好让前台有数据可以迭代。
String pro[];
pro=room.getPropertyId().split("[,]+");
List list = new ArrayList();
for (int i = 0; i < pro.length; i++) {
list.add(pro[i]);
}
request.setAttribute("propertyId", list);
这一段代码有点关键,这个主要是在<s:checkboxList>中的value属性。
<s:checkboxlist list="propertyList" label="设施" listKey="propertyId" listValue="propertyName" name="room.propertyId" value="#request.propertyId"></s:checkboxlist>
我来解释下这些属性的含义,list就是我们在后天定义的list的名字,lable是一个标签,这行代码相当于一个tr里面放了两个td,一个td放lable,一个td放checkbox,然后listkey和listvale分别代表list中bean的属性。listvalue是显示在页面上的值。而name值则是为了绑定后台的属性值room,而propertyId是room的一个属性值。value值则是为了使后台返回的数据,如1,2这样的数据与前台进行匹配,如果符合则选中。这个是在request范围中把propertyId取出来。
最后在说一下关于<s:checkboxList>验证是否选中的问题,只需要直接这样子写即可:
var value = document.getElementsByName('room.propertyId');
var length = value.length;
var aa = "";
alert(length);
for(var i = 0 ;i<length;i++){
if(value[i].checked == true){
aa = "哈哈";
}
}
if(aa==""){
alert("请选择");
}
但是有点奇怪的是用这种方式不能获得checkboxlist的焦点,如果有知道的兄弟交流下...
分享到:
相关推荐
在Struts框架中,`<s:checkboxlist>`是一个非常实用的标签,用于在HTML表单中创建一组复选框,通常用于用户选择多个选项。本文将深入探讨如何巧妙地处理`checkboxlist`的默认选中值以及实现换行显示。 首先,我们...
- `<s:checkboxlist>` 用于创建多选框列表。 - 示例: ```xml <s:checkboxlist tooltip="ChooseyourFriends" label="" list="{'Patrick','Jason','Jay','Toby','Rene'}" name="friends"/> ``` 7. **Checkbox...
<s:textfield name="list[%{#status.index}]" label="Item"></s:textfield> </s:iterator> ``` 对于`Map`,可以使用键值对的方式: ```jsp <s:iterator value="map"> <s:textfield name="map['key']" label...
本文将详细介绍如何利用Struts的`<s:checkboxlist>` 标签实现默认选中某些选项以及如何在显示时自动换行。 #### 二、CheckboxBean实体类设计 为了更好地理解`<s:checkboxlist>` 标签的使用,我们首先定义一个简单...
可以添加自定义CSS类到`<s:checkboxlist>`标签,然后在CSS文件中设置`display`属性为`inline-block`或`block`,并利用`white-space: pre-line`或者`<br>`标签来控制换行。例如: ```html <s:checkboxlist list=...
<s:checkboxlist name="interest" list="{'足球','篮球','排球','游泳'}" label="兴趣爱好" /> </s:form> ``` 9. **s:combobox** - 下拉组合框标签 `s:combobox` 结合了输入框和下拉列表,便于用户选择: ```...
2. <s:checkboxlist list=""></s:checkboxlist>-----多选框 3. <s:combobox list=""></s:combobox>-----下拉框 4. <s:component></s:component>-----图像符号 D: 1. <s:date/>-----获取日期格式 2. <s:...
`<s:checkbox>` 和 `<s:checkboxlist>`: - `<s:checkbox>` 用于创建复选框,可以绑定到Action的属性,方便数据收集。 - `<s:checkboxlist>` 则用于创建多选框列表,它接受一个列表作为参数,用户可以选择多个选项。...
- `<s:checkbox>` 用于创建单个复选框,而 `<s:checkboxlist>` 可以创建一组复选框,通常用于多选场景。 7. **下拉框标签 `<s:combobox>`**: - 提供一个下拉列表供用户选择,列表项可以从后台数据绑定。 8. **...
Struts2的UI标签还支持其他一些功能,如验证(通过`<s:fielderror>`和`<s:errors>`展示错误信息)、国际化(使用`<s:text>`和`s:resourcebundle`处理多语言)和主题样式(通过`cssClass`属性应用样式)。此外,...
13. `<s:if>`, `<s:elseif>`, `<s:else>`:条件判断标签,如`<s:if test="%{condition1}">...<s:elseif test="%{condition2}">...<s:else>...</s:else></s:elseif></s:if>`,可以用来根据表达式的真假执行不同的代码...
8. **checkboxlist标签**:`<s:checkboxlist>` 生成复选框列表,用户可以选择多项: ```jsp <s:form> <s:checkboxlist name="interest" list="{'足球','篮球','排球','游泳'}" label="兴趣爱好"/> </s:form> ``` 9...
`<s:checkbox>` 只创建一个复选框,而 `<s:checkboxlist>` 则基于提供的列表数据创建多个复选框。 **示例:** ```xml <s:checkbox name="agree" label="I agree"/> <s:checkboxlist name="interests" list=...
<%@ taglib uri="/struts-tags" prefix="s" %> 结合例子,重点掌握以下标签的用法 (1) <s:property> (2) <s:set> (3) <s:if> 、<s:elseif>、<s:else> ...(8) <s:select>、<s:radio>、<s:checkboxlist>
- `<s:checkboxlist>`和`s:radiolist`:创建多个复选框或单选按钮的列表。 - `<s:file>`:用于文件上传,通常与`<s:form>`的enctype属性配合使用。 - **非表单UI标签**: - `<s:url>`和`s:a>`:创建链接,`<s:...
除了上述标签,Struts2 还提供了许多其他有用的标签,如数据绑定的 `<s:textfield>`、`<s:textarea>`、`<s:checkbox>`、`<s:radio>`,以及表单处理的 `<s:form>`、`<s:submit>` 等。这些标签能够方便地与 Action 类...
2. `<s:checkboxlist>` - 显示多个复选框,列表数据来源于Action或Map。 3. `<s:combobox>` - 创建下拉选择框,数据源可以是列表、数组或其他集合。 4. `<s:component>` - 用于创建自定义组件,比如图标等。 **D组...
2. `<s:checkboxlist>`:创建多选框列表,允许用户选择多个选项。 3. `<s:combobox>`:创建下拉框,可以从指定列表中选择一个值。 4. `<s:component>`:用于创建自定义组件,如图像图标。 D组标签: 1. `<s:date>`...
此外,Struts2还提供了一些其他标签,如表单标签(`<s:form>`)、错误处理标签(`<s:fielderror>`、`<s:errors>`)、国际化标签(`<s:text>`和`s:resourcebundle>`)等,它们帮助开发者轻松处理表单验证、错误提示和...
2. `<s:checkboxlist>`:创建复选框列表,用户可选择多个值。 3. `<s:combobox>`:创建下拉框,可以与Ajax结合使用。 4. `<s:component>`:用于展示图形或特殊符号。 D部分: 1. `<s:date>`:格式化日期输出。 2. `...