jsf dataTable修改一行数据的方法
来源:互联网 发布:青铜器 软件 编辑:程序博客网 时间:2024/04/30 07:29
在实体类中定义一个editable属性,并设置访问器
public class Order{ String orderNo; String productName; BigDecimal price; int qty; boolean editable; public boolean isEditable() { return editable; } public void setEditable(boolean editable) { this.editable = editable; }
将此属性关联到页面的行上
<h:dataTable value="#{order.orderList}" var="o"><h:column> <f:facet name="header">Action</f:facet> <h:commandLink value="修改" action="#{managedBean.editAction(o)}" rendered="#{not o.editable}" /></h:column>
有梯子才能看到的具体代码:
package com.mkyong;import java.io.Serializable;import java.math.BigDecimal;import java.util.ArrayList;import java.util.Arrays;import javax.faces.bean.ManagedBean;import javax.faces.bean.SessionScoped;@ManagedBean(name="order")@SessionScopedpublic class OrderBean implements Serializable{ private static final long serialVersionUID = 1L; private static final ArrayList<Order> orderList = new ArrayList<Order>(Arrays.asList( new Order("A0001", "Intel CPU", new BigDecimal("700.00"), 1), new Order("A0002", "Harddisk 10TB", new BigDecimal("500.00"), 2), new Order("A0003", "Dell Laptop", new BigDecimal("11600.00"), 8), new Order("A0004", "Samsung LCD", new BigDecimal("5200.00"), 3), new Order("A0005", "A4Tech Mouse", new BigDecimal("100.00"), 10) )); public ArrayList<Order> getOrderList() { return orderList; } public String saveAction() { //get all existing value but set "editable" to false for (Order order : orderList){ order.setEditable(false); } //return to current page return null; } public String editAction(Order order) { order.setEditable(true); return null; } public static class Order{ String orderNo; String productName; BigDecimal price; int qty; boolean editable; public Order(String orderNo, String productName, BigDecimal price, int qty) { this.orderNo = orderNo; this.productName = productName; this.price = price; this.qty = qty; } public boolean isEditable() { return editable; } public void setEditable(boolean editable) { this.editable = editable; } public String getOrderNo() { return orderNo; } public void setOrderNo(String orderNo) { this.orderNo = orderNo; } public String getProductName() { return productName; } public void setProductName(String productName) { this.productName = productName; } public BigDecimal getPrice() { return price; } public void setPrice(BigDecimal price) { this.price = price; } public int getQty() { return qty; } public void setQty(int qty) { this.qty = qty; } }}
页面
<?xml version="1.0" encoding="UTF-8"?><!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" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:ui="http://java.sun.com/jsf/facelets" > <h:head> <h:outputStylesheet library="css" name="table-style.css" /> </h:head> <h:body> <h1>JSF 2 dataTable example</h1> <h:form> <h:dataTable value="#{order.orderList}" var="o" styleClass="order-table" headerClass="order-table-header" rowClasses="order-table-odd-row,order-table-even-row" > <h:column> <f:facet name="header">Order No</f:facet> <h:inputText value="#{o.orderNo}" size="10" rendered="#{o.editable}" /> <h:outputText value="#{o.orderNo}" rendered="#{not o.editable}" /> </h:column> <h:column> <f:facet name="header">Product Name</f:facet> <h:inputText value="#{o.productName}" size="20" rendered="#{o.editable}" /> <h:outputText value="#{o.productName}" rendered="#{not o.editable}" /> </h:column> <h:column> <f:facet name="header">Price</f:facet> <h:inputText value="#{o.price}" size="10" rendered="#{o.editable}" /> <h:outputText value="#{o.price}" rendered="#{not o.editable}" /> </h:column> <h:column> <f:facet name="header">Quantity</f:facet> <h:inputText value="#{o.qty}" size="5" rendered="#{o.editable}" /> <h:outputText value="#{o.qty}" rendered="#{not o.editable}" /> </h:column> <h:column> <f:facet name="header">Action</f:facet> <h:commandLink value="Edit" action="#{order.editAction(o)}" rendered="#{not o.editable}" /> </h:column> </h:dataTable> <h:commandButton value="Save Changes" action="#{order.saveAction}" /> </h:form> </h:body></html>
例子源代码:
http://download.csdn.net/download/erd8888/10163521
阅读全文
0 0
- jsf dataTable修改一行数据的方法
- jsf datatable后台获取数据方法
- datatable中行的移动,datatable中将一行的数据移动到另外一行,datatable交换数据
- DataTable获取第一行和最后一行的数据
- 删除dataTable的一行
- JSF<h:dataTable>分页,编辑,修改
- 筛选DataTable数据的方法
- 筛选DataTable数据的方法
- 筛选DataTable数据的方法
- 筛选DataTable数据的方法
- jsf中dataTable嵌套dataTable的实例
- JSF Datatable 大数据集分页
- JSF中DataTable和SelectOneRadio搭配,每条记录每一行一个radio进行单选的解决办法
- 修改一行数据的锁生命周期
- JSF 初始化 页面数据的方法
- DataTable 修改数据
- C#修改datatable数据
- jsf的h:dataTable怎么修改多行中某一列的字体,背景色等属性?
- 源码分析之-容器类-HashMap
- Sharding-JDBC使用问题记录
- python加密->RC4.py
- FPGA电源供电芯片的设计篇
- iaas、paas、saas的云计算服务模式简介
- jsf dataTable修改一行数据的方法
- python初体验
- LED Tube(LED 灯管)常见欧规安规认证测试要求
- oracle的开启和关闭
- Java WebSocket 聊天室Demo
- HTC595的时序操作序分析
- 微信小程序多选框选中后改变样式--自定义图片
- NKOJ 2266 (HNOI 2013)游走(高斯消元+数学期望)
- C#读取Excel表格中数据并返回datatable