首页 > 代码库 > Salesforce零基础(二) 内部类

Salesforce零基础(二) 内部类

本例主要实现的是前台页面上有复选框,选复选框后把所对应的三条数据留下。

技术分享

 

技术分享

点击清除复选,就取消复选。

 1 <apex:page controller="CL_01">
 2     <apex:form >
 3         <apex:pageBlock >
 4             <apex:pageBlockTable value="http://www.mamicode.com/{!cList}" var="c" columns="3" >
 5                 <apex:column value="http://www.mamicode.com/{!c.ac.Id}"/>
 6                 <apex:column value="http://www.mamicode.com/{!c.ac.Name}"/>
 7                 
 8                 <apex:column headervalue="http://www.mamicode.com/复选框">
 9                     <apex:inputCheckbox id="checkbox" value="http://www.mamicode.com/{!c.check}"/>
10                 </apex:column>
11             </apex:pageBlockTable>
12             <apex:pageblockButtons >
13                 <apex:commandButton action="{!clear}" value="http://www.mamicode.com/清除复选"/>    
14                 <apex:commandButton action="{!save}" value="http://www.mamicode.com/保存"/>
15             </apex:pageblockButtons>
16         </apex:pageBlock>    
17     </apex:form>
18 </apex:page>
public with sharing class CL_01 {
    
    public list<Account> aList{set;get;}
    public list<CL_01DTO> cList{set;get;}
    
    public CL_01(){
        aList = [Select Name, Id From Account];
        cList = new list<CL_01DTO>();
     
        for(Account a : aList){
            CL_01DTO c = new CL_01DTO();
            c.check = false;
            c.ac = a;
            cList.add(c);
          }
    }
    public void save() {
        list<CL_01DTO> cList2 = new list<CL_01DTO>();
        for(CL_01DTO c : cList){
            if(c.check == true){
                cList2.add(c);
            }
        }
        cList.clear();
        cList = cList2;
    }
    public void clear() {
        for(CL_01DTO c : cList){
             c.check = false;       
        }
    }
   //定义一个内部类让它有两个属性,一个是check为复选框,一个是Account属性。这样就把复选框和前面的一条数据关联上
   //关键在于前端页面上checkbox 必须加一个属性value 这样才能前后关联上
    public class CL_01DTO{
        public Boolean check{set;get;}
        public Account ac{set;get;}
    }
}

 

Salesforce零基础(二) 内部类