动态自增表格rich:dataTable

来源:互联网 发布:java有参的构造方法 编辑:程序博客网 时间:2024/05/29 18:25

jsp文件:
类文件:

<rich:dataTable id="tb1" value="#{tbtest.tb}" var="tbmethod"
      width
="600px">
      
<f:facet name="header">
       
<rich:columnGroup>
        
<rich:column colspan="2">
         
<h:outputText value="采集要素"></h:outputText>
        
</rich:column>
       
</rich:columnGroup>
      
</f:facet>
      
<rich:column>
       
<f:facet name="header">
        
<h:outputText value="值一"></h:outputText>
       
</f:facet>
       
<a4j:commandLink value="#{tbmethod.value1}" reRender="pp1"
        action
="#{tbdb.selValue}" style="width:250px">
        
<a4j:actionparam name="pa1" value="#{tbmethod.id}"
         assignTo
="#{tbdb.id}" />
       
</a4j:commandLink>
      
</rich:column>
      
<rich:column>
       
<f:facet name="header">
        
<h:outputText value="值二"></h:outputText>
       
</f:facet>
       
<h:outputText value="#{tbmethod.value2}" escape="false" style="width:250px"></h:outputText>
      
</rich:column>
     
</rich:dataTable>

 

private List<SetAllInfo> tb;

Map maps 
= FacesContext.getCurrentInstance().getExternalContext()
    .getSessionMap();

public TestTest() {
}


public void Add(SetAllInfo setinfo) {
   tb 
= new ArrayList<SetAllInfo>();
   List kk 
= (ArrayList) maps.get("xiaoyi");
   
if (kk != null{
    tb 
= kk;
   }

   
if("".equals(setinfo.getValue1()))
   
{
    setinfo.setValue1(
"&nbsp;");
   }

   
if("".equals(setinfo.getValue2()))
   
{
    setinfo.setValue2(
"&nbsp;");
   }

   tb.add(setinfo);
   maps.put(
"xiaoyi", tb);
}


public void del(long ids) {
   tb 
= (ArrayList) maps.get("xiaoyi");
   
for (int i = 0; i < tb.size(); i++{
    SetAllInfo ss 
= tb.get(i);
    
if (ids == ss.getId()) {
     tb.remove(i);
     maps.put(
"xiaoyi", tb);
     
break;
    }

   }

}


public void update(SetAllInfo info) {
   List
<SetAllInfo> tbtemp = (ArrayList) maps.get("xiaoyi");
   
for (int i = 0; i < tbtemp.size(); i++{
    SetAllInfo sai 
= tbtemp.get(i);
    
if (info.getId() == sai.getId()) {
     
// tb.remove(i);
     
// tb.add(i, info);
     tbtemp.set(i, info);
     tb 
= tbtemp;
     
// tb.addAll(tbtemp);
     
// tb=tbtemp;
     maps.put("xiaoyi", tb);
     
break;
    }

   }

}


public SetAllInfo selElem(long flagRow) {
   SetAllInfo ss 
= new SetAllInfo();
   tb 
= new ArrayList<SetAllInfo>();
   List lis 
= (ArrayList) maps.get("xiaoyi");
   
if (lis != null{
    tb 
= lis;
    
for (int i = 0; i < tb.size(); i++{
     ss 
= tb.get(i);
     
if (flagRow == ss.getId()) {
      
break;
     }

    }

   }

   
return ss;
}


public List<SetAllInfo> getTb() {
   tb 
= (ArrayList) maps.get("xiaoyi");
   
return tb;
}


public void setTb(List<SetAllInfo> tb) {
   
this.tb = tb;
}
 
原创粉丝点击