关于jsf中全选
<%@ page contentType="text/html;charset=GB2312"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.find {
font-family: "宋体";
color: #FFFFFF;
}
.STYLE1 {color: #000000
font-size: 16px
}
.STYLE4 {font-size: 14px}
.STYLE5 {font-size: 12px}
.STYLE6 {font-size: 12px; color: #FFFFFF; }
.body{font-size:12px;cloor:#FFFFFF;}
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
body { font-family: Arial; }
.tablebg { background-color: #ffffff; }
.header { font-weight: bold; }
.footer { font-weight: bold; }
.text { text-align: left; }
.number { text-align: right; }
.graybg { background-color: #CCCCCC; }
.whitebg { background-color: #CCCCCC; }
-->
</style>
</head>
<body>
<f:view>
<table width="95%" height="590" border="1" cellpadding="0"
cellspacing="0" bordercolor="#999999">
<!--DWLayoutTable-->
<tr>
<td width="600" height="90" valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->
<tr>
<td width="602" height="39">
</td>
</tr>
<tr>
<td height="20" align="left" valign="middle" bgcolor="#333333">
<span class="STYLE1">会员管理~会员审核</span>
</td>
</tr>
<tr>
<td height="31">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="360" valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0"
bordercolor="#ECE9D8" bgcolor="#999999">
<!--DWLayoutTable-->
<tr>
<td height="57" valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->
<tr>
<td width="600" height="26" valign="bottom">
<p>
查询信息
</p>
</td>
</tr>
<td height="31" align="left" valign="top">
<h:form id="selectUNMemberForm">
请输入会员名字:
<h:inputText id="memberName"
value="#{memberForm.member.memberName}" />
<h:commandButton type="submit" value="搜索"
action="#{memberForm.unPassMember}" />
<h:message for="memberName"></h:message>
</h:form>
</td>
</table>
</td>
</tr>
<tr>
<td width="600" height="434" align="left" valign="top">
<h:form id="unpass_list">
<table width="602" border="1" cellspacing="0"
bgcolor="#FFFFFF">
<h:dataTable id="listTable" cellpadding="5" cellspacing="1"
value="#{memberForm.unPassModel}" var="unPass" rows="4"
styleClass="tablebg" headerClass="header"
footerClass="footer"
columnClasses="text,number,number,number"
rowClasses="graybg,whitebg" border="0">
<h:column>
<f:facet name="header">
<h:outputText value=""></h:outputText>
</f:facet>
<h:selectBooleanCheckbox id="isSelect"
value="#{unPass.memberStatus}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="会员名称" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.memberName}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="真实姓名" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.realName}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="性别" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.memberSex}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="email" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.email}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="联系方式" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.phone}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="是否通过" style="font-size:14px;"></h:outputText>
</f:facet>
<h:commandLink action="#{memberForm.passMember}">
<h:outputText value="#{unPass.isPass}"
style="font-size:12px;"></h:outputText>
<t:updateActionListener value="#{unPass.memberName}"
property="#{memberForm.member.memberName}"></t:updateActionListener>
</h:commandLink>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="" />
</f:facet>
<h:commandButton value="删除" action="#{memberForm.delete}"
onclick='return confirm("你确定要删除吗?")'>
<t:updateActionListener value="#{unPass.memberName}"
property="#{memberForm.member.memberName}"></t:updateActionListener>
</h:commandButton>
</h:column>
</h:dataTable>
<div align="center">
<h:panelGrid>
<h:outputLabel value="全选" for="SelectAll"></h:outputLabel>
<h:selectBooleanCheckbox id="SelectAll"
onclick="setCheckedStatus();" />
<h:commandButton value="删除所选"
action="#{memberForm.patchDelete}" />
<h:commandButton value="审核所选"
action="#{memberForm.patchUpdate}" />
</h:panelGrid>
</div>
<t:dataScroller id="scroll_1" for="listTable"
pageCountVar="pageCount" pageIndexVar="pageIndex"
styleClass="scroller" paginator="true" paginatorMaxPages="5"
paginatorTableClass="paginator"
paginatorActiveColumnStyle="font-weight:bold;"
immediate="true">
<div align="center">
<f:facet name="first">
<h:outputText value="首页"
style="color:#ffffff;font-size:14px"></h:outputText>
</f:facet>
<f:facet name="previous">
<h:outputText value="上一页"
style="color:#ffffff;font-size:14px"></h:outputText>
</f:facet>
<f:facet name="next">
<h:outputText value="下一页"
style="color:#ffffff;font-size:14px"></h:outputText>
</f:facet>
<f:facet name="last">
<h:outputText value="尾页"
style="color:#ffffff;font-size:14px"></h:outputText>
</f:facet>
</div>
</t:dataScroller>
</table>
</h:form>
</td>
</tr>
</table>
</td>
</tr>
</table>
</f:view>
</body>
</html>
<script type="text/javascript">
/**
* 通过全选按钮选择表格中的全部数据
*/
function setCheckedStatus(){
var TableData = document.getElementById("unpass_list:listTable");
var CheckAll = document.getElementById("unpass_list:SelectAll");
// 判断浏览器类型,如果是IE则使用table表格获取,否则通过ID获取
if(navigator.userAgent.indexOf("MSIE")>0){
if(TableData != null && CheckAll != null){
for(i=1;i<TableData.rows.length;i++){
TableData.rows(i).cells(0).children.item(0).checked = CheckAll.checked;
}
}
}else{
if(TableData != null && CheckAll != null){
for(i=0;i<TableData.rows.length -1;i++){
document.getElementById("unpass_list:listTable:"+i+":isSelect").checked = CheckAll.checked;
}
}
}
}
</script>
这上面中的javascript为全选,其中的批量删除为:
public class MemberForm extends BasePage {
private Member member = new Member();
private String rePassword;
private MemberManager memberManager;
private String memberID;
private List memberList = new ArrayList();
private List unPassList = new ArrayList();
DataModel memberModel = null;
private int pageCount;
public DataModel getUnPassModel() {
if (memberModel == null) {
memberModel = new ListDataModel();
memberModel.setWrappedData(this.getUnPassList());
}
return memberModel;
}
/**
* 批量删除数据
*
* @return String patchDelete 代表批量删除后要导航到的页面 这里我们就让他返回成功页面
*/
public String patchDelete() {
DataModel mdm = (ListDataModel) getUIData().getValue();
List<Member> list = (List) mdm.getWrappedData();
// 选择选中的用户进行批量删除
for (Member m : list) {
if (m.isMemberStatus()) {
memberManager.removeMember(m.getMemberName());
}
}
return "patchDel";
}
}
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
<!--
.find {
font-family: "宋体";
color: #FFFFFF;
}
.STYLE1 {color: #000000
font-size: 16px
}
.STYLE4 {font-size: 14px}
.STYLE5 {font-size: 12px}
.STYLE6 {font-size: 12px; color: #FFFFFF; }
.body{font-size:12px;cloor:#FFFFFF;}
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
body { font-family: Arial; }
.tablebg { background-color: #ffffff; }
.header { font-weight: bold; }
.footer { font-weight: bold; }
.text { text-align: left; }
.number { text-align: right; }
.graybg { background-color: #CCCCCC; }
.whitebg { background-color: #CCCCCC; }
-->
</style>
</head>
<body>
<f:view>
<table width="95%" height="590" border="1" cellpadding="0"
cellspacing="0" bordercolor="#999999">
<!--DWLayoutTable-->
<tr>
<td width="600" height="90" valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->
<tr>
<td width="602" height="39">
</td>
</tr>
<tr>
<td height="20" align="left" valign="middle" bgcolor="#333333">
<span class="STYLE1">会员管理~会员审核</span>
</td>
</tr>
<tr>
<td height="31">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="360" valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0"
bordercolor="#ECE9D8" bgcolor="#999999">
<!--DWLayoutTable-->
<tr>
<td height="57" valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->
<tr>
<td width="600" height="26" valign="bottom">
<p>
查询信息
</p>
</td>
</tr>
<td height="31" align="left" valign="top">
<h:form id="selectUNMemberForm">
请输入会员名字:
<h:inputText id="memberName"
value="#{memberForm.member.memberName}" />
<h:commandButton type="submit" value="搜索"
action="#{memberForm.unPassMember}" />
<h:message for="memberName"></h:message>
</h:form>
</td>
</table>
</td>
</tr>
<tr>
<td width="600" height="434" align="left" valign="top">
<h:form id="unpass_list">
<table width="602" border="1" cellspacing="0"
bgcolor="#FFFFFF">
<h:dataTable id="listTable" cellpadding="5" cellspacing="1"
value="#{memberForm.unPassModel}" var="unPass" rows="4"
styleClass="tablebg" headerClass="header"
footerClass="footer"
columnClasses="text,number,number,number"
rowClasses="graybg,whitebg" border="0">
<h:column>
<f:facet name="header">
<h:outputText value=""></h:outputText>
</f:facet>
<h:selectBooleanCheckbox id="isSelect"
value="#{unPass.memberStatus}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="会员名称" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.memberName}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="真实姓名" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.realName}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="性别" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.memberSex}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="email" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.email}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="联系方式" style="font-size:14px;"></h:outputText>
</f:facet>
<h:outputText value="#{unPass.phone}"
style="font-size:12px;"></h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="是否通过" style="font-size:14px;"></h:outputText>
</f:facet>
<h:commandLink action="#{memberForm.passMember}">
<h:outputText value="#{unPass.isPass}"
style="font-size:12px;"></h:outputText>
<t:updateActionListener value="#{unPass.memberName}"
property="#{memberForm.member.memberName}"></t:updateActionListener>
</h:commandLink>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="" />
</f:facet>
<h:commandButton value="删除" action="#{memberForm.delete}"
onclick='return confirm("你确定要删除吗?")'>
<t:updateActionListener value="#{unPass.memberName}"
property="#{memberForm.member.memberName}"></t:updateActionListener>
</h:commandButton>
</h:column>
</h:dataTable>
<div align="center">
<h:panelGrid>
<h:outputLabel value="全选" for="SelectAll"></h:outputLabel>
<h:selectBooleanCheckbox id="SelectAll"
onclick="setCheckedStatus();" />
<h:commandButton value="删除所选"
action="#{memberForm.patchDelete}" />
<h:commandButton value="审核所选"
action="#{memberForm.patchUpdate}" />
</h:panelGrid>
</div>
<t:dataScroller id="scroll_1" for="listTable"
pageCountVar="pageCount" pageIndexVar="pageIndex"
styleClass="scroller" paginator="true" paginatorMaxPages="5"
paginatorTableClass="paginator"
paginatorActiveColumnStyle="font-weight:bold;"
immediate="true">
<div align="center">
<f:facet name="first">
<h:outputText value="首页"
style="color:#ffffff;font-size:14px"></h:outputText>
</f:facet>
<f:facet name="previous">
<h:outputText value="上一页"
style="color:#ffffff;font-size:14px"></h:outputText>
</f:facet>
<f:facet name="next">
<h:outputText value="下一页"
style="color:#ffffff;font-size:14px"></h:outputText>
</f:facet>
<f:facet name="last">
<h:outputText value="尾页"
style="color:#ffffff;font-size:14px"></h:outputText>
</f:facet>
</div>
</t:dataScroller>
</table>
</h:form>
</td>
</tr>
</table>
</td>
</tr>
</table>
</f:view>
</body>
</html>
<script type="text/javascript">
/**
* 通过全选按钮选择表格中的全部数据
*/
function setCheckedStatus(){
var TableData = document.getElementById("unpass_list:listTable");
var CheckAll = document.getElementById("unpass_list:SelectAll");
// 判断浏览器类型,如果是IE则使用table表格获取,否则通过ID获取
if(navigator.userAgent.indexOf("MSIE")>0){
if(TableData != null && CheckAll != null){
for(i=1;i<TableData.rows.length;i++){
TableData.rows(i).cells(0).children.item(0).checked = CheckAll.checked;
}
}
}else{
if(TableData != null && CheckAll != null){
for(i=0;i<TableData.rows.length -1;i++){
document.getElementById("unpass_list:listTable:"+i+":isSelect").checked = CheckAll.checked;
}
}
}
}
</script>
这上面中的javascript为全选,其中的批量删除为:
public class MemberForm extends BasePage {
private Member member = new Member();
private String rePassword;
private MemberManager memberManager;
private String memberID;
private List memberList = new ArrayList();
private List unPassList = new ArrayList();
DataModel memberModel = null;
private int pageCount;
public DataModel getUnPassModel() {
if (memberModel == null) {
memberModel = new ListDataModel();
memberModel.setWrappedData(this.getUnPassList());
}
return memberModel;
}
/**
* 批量删除数据
*
* @return String patchDelete 代表批量删除后要导航到的页面 这里我们就让他返回成功页面
*/
public String patchDelete() {
DataModel mdm = (ListDataModel) getUIData().getValue();
List<Member> list = (List) mdm.getWrappedData();
// 选择选中的用户进行批量删除
for (Member m : list) {
if (m.isMemberStatus()) {
memberManager.removeMember(m.getMemberName());
}
}
return "patchDel";
}
}
相关推荐
这篇博客文章“JSF中使用BooleanCheckbox实现全选功能”可能详细讲解了如何利用这种组件在用户界面中创建一个可以勾选的复选框,以便一次性选择或取消选择多个条目。下面我们将深入探讨JSF中的BooleanCheckbox及其在...
在JSF中,**组件** 是UI的基础元素,如按钮、文本输入框等。这些组件可以通过XML(Facelets)或JSP页面进行声明,并且可以组合成更复杂的视图结构。**Facelets** 是JSF推荐的视图定义语言,它比JSP更强大,更易于...
- **导航概述**:导航是 JSF 中的一个关键特性,它定义了应用程序中页面间的跳转逻辑。 - **导航规则**:通过在 `faces-config.xml` 文件中定义导航规则来实现页面之间的跳转。 **1.4 导航规则设置** - **导航案例...
4. **EL(Expression Language)**:EL是JSF中用于访问JavaBean属性的简洁表达式语法,它可以方便地在视图层与模型层之间传递数据。 5. **Managed Beans**:Managed Beans是JSF中的核心业务对象,它们存储和处理...
2. **Managed Bean**:Managed Bean是JSF中的核心组件,用来存储和处理数据。 3. **Navigation Handler**:负责处理页面间的跳转。 4. **Converter和Validator**:Converter转换数据类型,Validator验证用户输入。 ...
Managed Beans是JSF中的核心概念,它们作为业务逻辑的载体,可以被JSF框架自动管理。开发者可以定义属性和方法,实现后端逻辑,并通过EL(Expression Language)在视图层与之交互。 **5. EL表达式** EL是一种简洁的...
这篇博文“JSF中文问题解决方法完整版”提供了关于如何处理JSF框架在处理中文字符时可能出现的问题的解决方案。JSF作为Java EE的一部分,常常用于企业级应用开发,但处理中文字符时可能会遇到编码不兼容、乱码等问题...
5. **视图和会话范围的Bean**:JSF中的Managed Bean可以在不同的作用域中存在,如请求、会话、应用和视图。视图和会话范围的Bean特别适用于存储那些需要跨多个请求或页面保持的参数。 6. **导航案例**:JSF的导航...
在JSF中,应用程序被构建为一组可重用的UI组件,这些组件可以像HTML元素一样组合在一起,但提供了更丰富的功能和更强大的数据绑定能力。JSF生命周期包括六个主要阶段:恢复视图、应用请求值、处理验证、更新模型值、...
**转换和验证** 是JSF中的重要部分,允许开发者定义数据输入的规则,确保用户提交的数据符合预期格式和约束。JSF提供了一系列内置的验证器,同时也支持自定义验证器。 **导航系统** 控制着用户操作后的页面跳转,...
这个压缩包包含了一系列关于DHTML、JSF(JavaServer Faces)以及Struts2的重要学习资源,包括手册、教程和API文档,这些都是开发者必备的知识库。 首先,我们来看"Dhtml手册"。DHTML,全称Dynamic HTML,是一种利用...
在JSF中,UI组件(View)可以直接映射到后端的数据源(Model),并可以通过事件处理(Controller)进行交互。这使得开发者可以更专注于业务逻辑,而无需过多关注底层的HTTP通信细节。 首先,JSF的组件库是其一大...
查找更多关于Ajax4JSF的信息,可以访问相关的在线资源,包括文档、示例和社区支持。 Ajax4JSF中文用户指南是一个非常实用的入门资料,它详细介绍了如何使用Ajax4JSF来增强JSF应用的用户体验,帮助开发者快速上手并...
此外,自定义标签也是JSF中的一大特色,它允许开发者扩展和封装功能。 3. **JSF的LIB**:JSF的核心库包含了许多内置的组件和实用程序,这些库在JSF应用中是必不可少的。学习这部分,你需要了解如何导入和使用JSF的...
《JSF2》是关于JSF的第二版,相比第一版,JSF2引入了许多新特性,如Facelets作为默认视图层技术,使得视图更易于维护;引入了Partial State Saving,降低了服务器内存消耗;支持CDI(Contexts and Dependency ...
在未来的发展中,有可能所有的J2EE应用服务器都需要支持JSF。 Java Server Faces技术好处 引入了基于组件和事件驱动的开发模式,使开发人员可以使用类似于处理传统界面的方式来开发Web应用程序。提供了行为与...
4. **Managed Beans**:在JSF中,Managed Beans是Java对象,用于存储数据和实现业务逻辑。它们与JSF页面通过EL(Expression Language)进行交互。 5. **EL(Expression Language)**:EL是用于获取和设置Managed ...
在JSF中,**组件模型**是核心概念之一,它允许开发者通过拖放UI组件来创建页面,这些组件可以是按钮、输入框、表格等。JSF提供了丰富的内置组件库,并且支持自定义组件,以满足特定需求。 **Facelets**是JSF的默认...
jsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSFjsf实例 JSF学习 JSF jar包 JSF jsf实例 JSF学习 JSF jar包 JSF
Managed Beans是JSF中的关键组件,它们是业务逻辑的容器。在JSF 1.2中,可以使用注解(如`@ManagedBean`和`@RequestScoped`)来声明和管理Bean的生命周期,使得Bean的配置更加简洁。 ### 5. 验证与转换 JSF 1.2...