- 浏览: 499367 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (250)
- concurrent (11)
- io (1)
- CI (10)
- linux (57)
- windows (2)
- java (38)
- mac (4)
- eclipse (9)
- db (13)
- python (5)
- groovy (5)
- flex (7)
- hibernate (5)
- odb (8)
- netbeans (1)
- web (31)
- book (14)
- erlang (2)
- communication (2)
- virtualization (5)
- jUnit (0)
- jsf (1)
- perl (1)
- java jax-rs (5)
- Jenkins (2)
- Jenkins Plugin (3)
- android (2)
- git (1)
- big data (0)
- 试读 (1)
最新评论
-
yzzy4793:
讲的很清楚,明白
同步synchronized方法和代码块 -
aa51513:
中文乱码式硬伤
Jersey2.x对REST请求处理流程的分析 -
feiwomoshu1991:
...
同步synchronized方法和代码块 -
marshan:
启动失败的原因是加载的类版本冲突,因此你首先要保证依赖的版本和 ...
richfaces中facelet版本升级到2时的典型错误和解决办法 -
zhaohang6688:
请问我按照你的方式修改还是报错 错误信息还是这个 是为什么啊 ...
richfaces中facelet版本升级到2时的典型错误和解决办法
本文介绍了richface的一种使用情况:datatable和checkbox的结合。
rich:dataTable是很不错的web控件。但如果编写如下图效果的业务,必须结合checkbox来使用。
现附上代码,然后分析
<rich:dataTable id="carList" width="555px" rows="#{usr.pageSize}" value="#{usr.dataList}" var="car" rowClasses="dataListRow1, dataListRow2" rowKeyVar="row"> <f:facet name="header"> <rich:columnGroup> <h:column> <h:selectBooleanCheckbox id="all" onclick="selectAll(#{usr.scrollerPage},#{usr.pageSize});"/> </h:column> <h:column> <h:outputText styleClass="headerText" value="RowNum" /> </h:column> <h:column> <h:outputText styleClass="headerText" value="Name" /> </h:column> <h:column> <h:outputText styleClass="headerText" value="Decription" /> </h:column> <h:column> <h:outputText styleClass="headerText" value="Base Price" /> </h:column> <h:column> <h:outputText styleClass="headerText" value="操作" /> </h:column> </rich:columnGroup> </f:facet> <h:column> <h:selectBooleanCheckbox id="cbox" value="#{car.checked}"/> </h:column> <h:column> <h:outputText value="#{row}" /> </h:column> <h:column> <h:outputText value="#{car.name}" /> </h:column> <h:column> <h:outputText value="#{car.description}" /> </h:column> <h:column> <h:outputText value="#{car.baseprice}" /> </h:column> <h:column> <h:commandLink action="#{usr.delete}" value="删除" > <f:param name="id" value="#{car.id}"/> </h:commandLink> </h:column> </rich:dataTable> <rich:datascroller for="carList" id="dc1" style="width:480px" page="#{usr.scrollerPage}" onclick="antiSelect();" reRender="formlist"/>
这里的关键问题是全选。经过google和自己的摸索,总结如下:
onclick="selectAll(当前分页序号,每页多少条记录);"
注意:
如果使用xhtml,js代码请写入独立文件并在页面中引入:
<a4j:loadScript src="${pageContext.request.contextPath}/scripts/directory.js" />
否则,直接写在xhtml页面,会报错:
The content of elements must consist of well-formed character data or markup
原因我不确知,可能是xhtml解析问题。
js代码如下
function selectAll(page,size) { var checkAll=document.getElementById('formlist:carList:all').checked; for(var i=0;i<=10; i++){ var seq = (page-1)* size + i; var checkBox = document.getElementById('formlist:carList:'+seq+':cbox');//formlist:carList:0:cbox //alert("checkAll="+checkAll); //alert("page="+page+" size="+size+" i="+i+" seq="+seq); if(checkAll) checkBox.checked=true; else checkBox.checked=false; } } function antiSelect(){ document.getElementById('formlist:carList:all').checked=false; }
此前,我google的代码如下,在该死的ie下不能执行。为此,我扣了半天行号问题。
function selectAll() { var rows = document.getElementById('formlist:carList').rows; var currentState = rows[0].cells[0].childNodes[0].checked; var i; for (i in rows) { i++; if (currentState) { rows[i].cells[0].childNodes[0].checked=true; } else if (!currentState) { rows[i].cells[0].childNodes[0].checked=false; } } }
经测试,改代码全浏览器支持!
评论
1 楼
wwj5256
2010-08-24
学习了 刚好要用到
引用
如果使用xhtml,js代码请写入独立文件并在页面中引入:
这个问题
<script>
<!--
//js code
-->
</script>
这样IDE就应该不会去解析js了
发表评论
-
Apache benchmarking
2013-11-17 16:15 1217NAME ab - Apache HTTP ser ... -
dojo 动态创建下拉菜单和输入框
2013-02-04 18:35 5997<!DOCTYPE HTML PUBLIC " ... -
动态加载css和java script
2013-01-24 18:53 2691var portalLoader = { dojo : ... -
[web architect] nginx1.2.6+ tomcat7+memcached1.2.6
2012-12-25 17:40 1334Load Balancer (Nginx) ... -
[web architect] tomcat+nginx单机
2012-12-24 18:39 1003location / { ... -
Tomcat管理配置
2011-04-10 00:49 1225<?xml version='1.0' encod ... -
当前浏览器对html5的支持[狠图]
2011-01-15 03:08 4510html5是web的未来,这部巨作尚未完成,现在闪现的还只是一 ... -
richfaces中facelet版本升级到2时的典型错误和解决办法
2010-08-31 10:23 60142010-8-31 9:48:35 com.sun.faces ... -
探讨JSF·RichFaces分页的一种策略
2010-03-22 17:06 2813richfaces提供的rich:dataTable和rich ... -
richface 皮肤
2010-01-07 13:36 1512一、绪 richface默认提供 ... -
RichFaces第一例
2009-12-29 14:30 1672学习JSF和RichFaces一周了,总结以一个小例子为介,分 ... -
大小写问题
2008-10-14 16:11 1261背景: 系统包括单点登录模块,存在多个数据库,有mysql和o ... -
九张图
2004-12-02 13:52 1200这些天一直在做查询页面。昨天碰到了这个:美工提供的在页面上显示 ... -
翻页的处理
2004-12-28 10:11 10881 翻页时排序:为了实 ... -
上传file前,判断上传文件的扩展名
2004-12-28 10:20 1649首先我不太确定Js能否扑捉到file的value,于是作了一个 ... -
上传文件前判空
2004-12-28 10:24 1267上传文件时如果下拉列表框或file框为空,会报错。下面就解决这 ... -
根据radio值动态显示file
2005-03-01 17:51 1273<html><head><met ... -
jsp/servlet 乱码解决小方法
2005-03-13 15:13 1341import java.io.UnsupportedEncod ... -
关于unconditional
2005-03-18 23:18 939在active状态调用destroyApp(boolean u ... -
实现转贴功能的store procedure
2005-04-05 11:59 1206数据库结构board表--论坛板块表theme表--论坛主题表 ...
相关推荐
"json获取datatable后生成table分页显示checkbox全选"这个主题涵盖了几个重要的JavaScript和前端开发技术,这些技术有助于提升用户体验并优化服务器资源。以下是这些知识点的详细说明: 1. **JSON (JavaScript ...
本教程将深入探讨如何将ListView与CheckBox结合,实现一个CheckList,允许用户多选列表项,通常用于实现如设置、选择功能等场景。 1. **ListView的基本使用** - ListView是Android提供的一个视图容器,用于展示一...
ListView 中添加 CheckBox 的完美实现 在 Android 开发中,ListView 是一个非常常用的控件,它可以用来显示大量的数据。但是在实际开发中,我们经常需要在 ListView 中添加 CheckBox,以便用户可以选择某些项目。...
通过设置其`DataSource`属性,我们可以将其与数据源(如DataTable、List等)绑定,从而实现数据的展示。此外,`DataGridView`允许自定义列类型,包括文本、数字、日期以及自定义控件,如CheckBox。 要在`...
本文将详细探讨这些问题以及如何通过优化来实现“完美解决ListView和CheckBox的焦点冲突及CheckBox的复用问题”。 一、焦点冲突问题 在ListView中,通常一个列表项被点击时,焦点会自动转移到该列表项,但如果列表...
当我们需要在一个GridView中实现可选功能,即用户可以选择多个项目时,通常会将GridView与CheckBox结合起来使用。本文将详细讲解如何在Android应用中实现GridView与CheckBox的结合,以及相关的注意事项。 首先,...
在本篇文章中,我们将深入探讨如何将`CheckBox`与`GridView`结合起来,以实现全选、反选功能,并从数据库中获取数据。 首先,`CheckBox`在`GridView`中的应用主要是为了增强用户的交互体验。当`GridView`中的每个...
本文将深入讲解如何实现`TreeView`控件与复选框功能的完美结合,并提供代码示例,确保其可用性。 1. **添加复选框到TreeView节点** 在WinForm设计界面,可以通过设置`TreeView`控件的`CheckBoxes`属性为`true`来...
一个WinForm的TreeView,某node的CheckBox初始状态为false,当双击这个node的checkbox时,会出现很奇怪的情况: 第一次双击checkbox,checkbox显示的状态会切换两次状态,unchecked-> checked-> unchecked,而...
"自定义checkbox与button操作"这个主题涉及到如何通过编程实现一种特定的用户交互模式,即根据checkbox的状态来控制button的功能和视觉表现。这通常是通过JavaScript、CSS以及HTML来实现的。 首先,我们需要了解...
这可以通过监听全选Checkbox的`CheckedChanged`事件来实现,然后遍历DataGridView的所有行,设置每一行的Checkbox为与全选Checkbox状态一致。 - **反选功能**:反选意味着取消所有已选中的项。这可以通过再次触发...
### GridView和CheckBox结合知识点解析 #### 一、概述 在Web开发中,`GridView`控件常被用于展示数据表,而`CheckBox`则用于提供用户选择或切换某些功能的能力。将两者结合使用,可以实现对多条记录的批量操作,如...
本教程将深入探讨Android CheckBox的基本用法、事件监听以及如何结合源码实现一个完整的Demo。 首先,CheckBox的使用涉及到XML布局文件中的声明。在布局文件中,我们可以这样定义一个CheckBox: ```xml <CheckBox ...
【解决方法】 所以最好是修改jquery.datatable控件,给生成的每个datatable下的checkbox赋 予不同的id,因为datatable的id是不一样的,所以可以把 datatable的id作为 checkbox的前缀组成一个唯一的id 。 具体这个...
### checkBox分别处理选中与不选中 在Web开发中,`checkbox`是一种常见的表单元素,用于收集用户的选择信息。通常情况下,一个`checkbox`只能代表一项选择,但可以通过设置多个`checkbox`来实现多选功能。本文将...
1、ListView item中加入checkbox后onListItemClick 事件无法触发。 原因:checkbox的优先级高于ListItem于是屏蔽了ListItem的单击事件。 解决方案:设置checkbox的android:focusable="false" 2、选择其中的...
在WPF中,我们可以使用`FontIcon`或者`TextBlock`结合特殊的字体库来实现字体图标。 自定义CheckBox的第一步是选择一个合适的字体图标库。有许多免费的字体图标库,如Material Design Icons、Font Awesome、...
在网页设计中,`checkbox` 和 `radio` 是两种常见的表单元素,用于用户进行多选和单选操作。为了提升用户体验和界面美观性,设计师和开发者常常会为这些元素定制自定义样式。本篇文章将深入探讨如何实现“好看的”`...
当这两者结合时,我们得到了"带CheckBox的TreeView控件",这是一个功能强大的用户界面元素,特别适用于需要用户进行多选操作的情况,比如文件管理器、设置菜单等。 在.NET Framework或WPF(Windows Presentation ...
在Android开发中,CheckBox是一个常用的UI组件,用于提供两种状态的选择:选中和未选中。默认情况下,CheckBox的选中和未选中状态的图标是系统提供的,但有时为了满足应用的个性化需求,我们需要自定义这些图片样式...