function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
nagalakshminagalakshmi 

How to keep the multi pick list in visual force page with out using any object

Hi, 

 

           My requirement is developing multi picklist in visual force page with out using any salesforce object. Any one please help me how to solve these.

 

Thanks,

Lakshmi

Best Answer chosen by Admin (Salesforce Developers) 
Ankit AroraAnkit Arora

Here is the ready made coffee for you, just let me know when I will get mine :

 

VFP :

 

<apex:page controller="t">
<apex:form>
    <apex:actionFunction name="GetCity" reRender="pb" action="{!RelatedCity}"/>
    <apex:pageBlock id="pb">
        <apex:pageBlockSection>
            <apex:selectList multiselect="false" size="1" value="{!SelectedState}" onchange="GetCity() ;">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!State}"/>
            </apex:selectList>
            <apex:selectList multiselect="false" size="1">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!City}"/>
            </apex:selectList>
        </apex:pageBlockSection>
    </apex:pageBlock>
</apex:form>
</apex:page>

 Apex Class :

 

public class t
{
    public list<SelectOption> State {get; set;}
    public List<SelectOption> City {get; set;}
    public String SelectedState {get; set;}
    
    public t()
    {
        State = new List<SelectOption>() ;
        City = new List<SelectOption>() ;
        SelectedState = '' ;
        
        State.add(new SelectOption('Andhrapradesh', 'Andhrapradesh')) ;
        State.add(new SelectOption('Karnataka', 'Karnataka')) ;
        State.add(new SelectOption('Tamilnadu', 'Tamilnadu')) ;
    }
    
    public PageReference RelatedCity()
    {
        if(SelectedState == 'Andhrapradesh')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Kurnool' , 'Kurnool')) ;
            City.add(new SelectOption('Hyderabad' , 'Hyderabad')) ;
            City.add(new SelectOption('Vizag' , 'Vizag')) ;
        }
        if(SelectedState == 'Karnataka')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Bangalore' , 'Bangalore')) ;
            City.add(new SelectOption('Kolar' , 'Kolar')) ;
        }
        if(SelectedState == 'Tamilnadu')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Chennai' , 'Chennai')) ;
            City.add(new SelectOption('Mysore' , 'Mysore')) ;
        }
        return null ;
    }
}

 

Thanks

Ankit Arora

Blog | Facebook | Blog Page

All Answers

Ankit AroraAnkit Arora

Do you need something like this??

 

VFP

 

<apex:page controller="t">
<apex:form>
    <apex:pageBlock>
        <apex:pageBlockSection>
            <apex:selectList multiselect="true" size="5">
                <apex:selectOptions value="{!lst}"/>
            </apex:selectList>
        </apex:pageBlockSection>
    </apex:pageBlock>
</apex:form>
</apex:page>

 Apex Class :

 

public class t
{
    public list<SelectOption> lst {get; set;}
    public t()
    {
        lst = new List<SelectOption>() ;
        for(Account acc : [select id,name from account limit 10])
        {
            lst.add(new SelectOption(acc.Id, acc.Name)) ;
        }
    }
}

 

Thanks

Ankit Arora

Blog | Facebook | Blog Page

nagalakshminagalakshmi

Hi, 

 

         Thanks for your reply. But i want to keep the dependent pick list in visual force page with out using the salesforce back end object. Please help me.

 

 

Thanks,

Lakshmi.

SubhaSubha
see if this helps.. public class t { public list lst {get; set;} public t() { lst = new List() ; lst.add(new SelectOption('US','US')); lst.add(new SelectOption('CANADA','Canada')); lst.add(new SelectOption('MEXICO','Mexico')); } }
nagalakshminagalakshmi

Hi, 

 

       Thanks for your reply.

 

Actually i want the dependent pick list like as

 

pick list 1values :          Andhrapradesh

                                         karnataka

                                          tamilnadu

 

pick list 2 values:       kurnool , hyderabad, vizag..    ----------- these values are belongs to andhrapradesh

                                       bangalore , kolar --------------------------- these values are belongs to karnataka

                                       chennai, mysore  --------------------------  these values are belongs to tamilnadu

 

                    Now  i want to, If select the andhrapradesh in first pick list i want to display the corresponding values of andhra pradesh only. And if i select karnataka want to show the corresponding values of karnataka.. Like this i want to develop the pick lists in visual force page. Any one please help me.

 

Thanks,

Lakshmi.

              

                                       

nagalakshminagalakshmi

                                                     

Hi, 

 

       Thanks for your reply.

 

Actually i want the dependent pick list like as

 

pick list 1values :          Andhrapradesh

                                         karnataka

                                          tamilnadu

 

pick list 2 values:       kurnool , hyderabad, vizag..    ----------- these values are belongs to andhrapradesh

                                       bangalore , kolar --------------------------- these values are belongs to karnataka

                                       chennai, mysore  --------------------------  these values are belongs to tamilnadu

 

                    Now  i want to, If select the andhrapradesh in first pick list i want to display the corresponding values of andhra pradesh only. And if i select karnataka want to show the corresponding values of karnataka.. Like this i want to develop the pick lists in visual force page. Any one please help me.

 

Thanks,

Lakshmi.

Ankit AroraAnkit Arora

Here is the ready made coffee for you, just let me know when I will get mine :

 

VFP :

 

<apex:page controller="t">
<apex:form>
    <apex:actionFunction name="GetCity" reRender="pb" action="{!RelatedCity}"/>
    <apex:pageBlock id="pb">
        <apex:pageBlockSection>
            <apex:selectList multiselect="false" size="1" value="{!SelectedState}" onchange="GetCity() ;">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!State}"/>
            </apex:selectList>
            <apex:selectList multiselect="false" size="1">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!City}"/>
            </apex:selectList>
        </apex:pageBlockSection>
    </apex:pageBlock>
</apex:form>
</apex:page>

 Apex Class :

 

public class t
{
    public list<SelectOption> State {get; set;}
    public List<SelectOption> City {get; set;}
    public String SelectedState {get; set;}
    
    public t()
    {
        State = new List<SelectOption>() ;
        City = new List<SelectOption>() ;
        SelectedState = '' ;
        
        State.add(new SelectOption('Andhrapradesh', 'Andhrapradesh')) ;
        State.add(new SelectOption('Karnataka', 'Karnataka')) ;
        State.add(new SelectOption('Tamilnadu', 'Tamilnadu')) ;
    }
    
    public PageReference RelatedCity()
    {
        if(SelectedState == 'Andhrapradesh')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Kurnool' , 'Kurnool')) ;
            City.add(new SelectOption('Hyderabad' , 'Hyderabad')) ;
            City.add(new SelectOption('Vizag' , 'Vizag')) ;
        }
        if(SelectedState == 'Karnataka')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Bangalore' , 'Bangalore')) ;
            City.add(new SelectOption('Kolar' , 'Kolar')) ;
        }
        if(SelectedState == 'Tamilnadu')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Chennai' , 'Chennai')) ;
            City.add(new SelectOption('Mysore' , 'Mysore')) ;
        }
        return null ;
    }
}

 

Thanks

Ankit Arora

Blog | Facebook | Blog Page

This was selected as the best answer
nagalakshminagalakshmi

Hi,

     

               Thanks, Its working fine and its very help ful for me.

 

 

eeshaeesha

Hi, 

          

           If i want another dependent pick list depend on picklist2 values on visual force page. How can write controller and page for this. Please help me out.

 

 

Thanks,

eesha.

SubhaSubha

Just change the code in the previous example with the below code and write a method called RelatedDistrict() with the code same as RelatedCity except change the selected value... and declare public List<SelectOption> District{get; set;}    public String SelectedState {get; set;} in the controller class....


 

<apex:selectList multiselect="false" size="1" value="{!SelectedCity}" onchange="GetDistrict() ;">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!City}"/>
            </apex:selectList>
            </apex:pageBlockSection>
           
            <apex:actionFunction name="GetDistrict" reRender="sam" action="{!RelatedDistrict}"/>
            <apex:pageBlockSection id="sam">

            <apex:selectList multiselect="false" size="1" >
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!District}"/>
            </apex:selectList>
        </apex:pageBlockSection>


eeshaeesha

Hi,

 

      I wrote the like which you have sent, But in the third pick list does not show the corresponding values depent on the second picklist value. could u please tell me where should i done the mistake. Please help me.

My controller and my pages are

controller:

public class multipicklist
{
    public list<SelectOption> State {get; set;}
    public List<SelectOption> City {get; set;}
    
    public List<SelectOption> District{get; set;}  
    public String SelectedState {get; set;}
    public String Selectedcity{get; set;}
    public multipicklist()
    {
        State = new List<SelectOption>() ;
        City = new List<SelectOption>() ;
        SelectedState = '' ;
        
        State.add(new SelectOption('Andhrapradesh', 'Andhrapradesh')) ;
        State.add(new SelectOption('Karnataka', 'Karnataka')) ;
        State.add(new SelectOption('Tamilnadu', 'Tamilnadu')) ;
    }
    
    public PageReference RelatedCity()
    {
        if(SelectedState == 'Andhrapradesh')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Kurnool' , 'Kurnool')) ;
            City.add(new SelectOption('Hyderabad' , 'Hyderabad')) ;
            City.add(new SelectOption('Vizag' , 'Vizag')) ;
        }
        if(SelectedState == 'Karnataka')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Bangalore' , 'Bangalore')) ;
            City.add(new SelectOption('Kolar' , 'Kolar')) ;
        }
        if(SelectedState == 'Tamilnadu')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Chennai' , 'Chennai')) ;
            City.add(new SelectOption('Mysore' , 'Mysore')) ;
        }
        return null ;
    }
    
    public PageReference RelatedDistrict()
    {
        if(Selectedcity == 'Kurnool')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('aaa' , 'aaa')) ;
            City.add(new SelectOption('bbb' , 'bbb')) ;
            City.add(new SelectOption('ccc' , 'ccc')) ;
        }
        if(Selectedcity == 'Hyderabad')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('ddd' , 'ddd')) ;
            City.add(new SelectOption('eee' , 'eee')) ;
        }
        if(Selectedcity == 'Vizag')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('fff' , 'fff')) ;
            City.add(new SelectOption('ggg' , 'ggg')) ;
        }
        if(Selectedcity == 'Bangalore')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('hhh' , 'hhh')) ;
            City.add(new SelectOption('iii' , 'iii')) ;
        }
        if(Selectedcity == 'Kolar')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('jjj' , 'jjj')) ;
            City.add(new SelectOption('kkk' , 'kkk')) ;
        }
        if(Selectedcity == 'Chennai')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('lll' , 'lll')) ;
            City.add(new SelectOption('mmm' , 'mmm')) ;
        }
       
        if(Selectedcity == 'Mysore')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('nnn' , 'nnn')) ;
            City.add(new SelectOption('ooo' , 'ooo')) ;
        }
        return null ;
    }
}
<apex:page controller="multipicklist">
<apex:form >
     <apex:actionFunction name="GetCity" reRender="pb" action="{!RelatedCity}"/>
    <apex:pageBlock id="pb">
        <apex:pageBlockSection >
      <apex:selectList multiselect="false" size="1" value="{!SelectedState}" onchange="GetCity() ;">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!State}"/>
            </apex:selectList>
            <apex:selectList multiselect="false" size="1" value="{!Selectedcity}" onchange="GetDistrict() ;">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!City}"/>
            </apex:selectList>
             </apex:pageBlockSection>
             <apex:actionFunction name="GetDistrict" reRender="sam" action="{!RelatedDistrict}"/>
            <apex:pageBlockSection id="sam">
            <apex:selectList multiselect="false" size="1">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!District}"/>
            </apex:selectList>
        </apex:pageBlockSection>
    </apex:pageBlock>
    </apex:form> </apex:page>
nagalakshminagalakshmi

Hi eesha,

 

 You just change the code as distric.add in relateddistric method()

 

 

 

public class multipicklist
{
    public list<SelectOption> State {get; set;}
    public List<SelectOption> City {get; set;}
    
    public List<SelectOption> District{get; set;}  
    public String SelectedState {get; set;}
    public String Selectedcity{get; set;}
    public multipicklist()
    {
        State = new List<SelectOption>() ;
        City = new List<SelectOption>() ;
        District= new List<SelectOption>() ;
        SelectedState = '' ;
        Selectedcity='';
        
        State.add(new SelectOption('Andhrapradesh', 'Andhrapradesh')) ;
        State.add(new SelectOption('Karnataka', 'Karnataka')) ;
        State.add(new SelectOption('Tamilnadu', 'Tamilnadu')) ;
    }
    
    public PageReference RelatedCity()
    {
        if(SelectedState == 'Andhrapradesh')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Kurnool' , 'Kurnool')) ;
            City.add(new SelectOption('Hyderabad' , 'Hyderabad')) ;
            City.add(new SelectOption('Vizag' , 'Vizag')) ;
        }
        if(SelectedState == 'Karnataka')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Bangalore' , 'Bangalore')) ;
            City.add(new SelectOption('Kolar' , 'Kolar')) ;
        }
        if(SelectedState == 'Tamilnadu')
        {
            City = new List<SelectOption>() ;
            City.add(new SelectOption('Chennai' , 'Chennai')) ;
            City.add(new SelectOption('Mysore' , 'Mysore')) ;
        }
        return null ;
    }
    
    public PageReference RelatedDistrict()
    {
        if(Selectedcity == 'Kurnool')
        {
            District= new List<SelectOption>() ;
            District.add(new SelectOption('aaa' , 'aaa')) ;
            District.add(new SelectOption('bbb' , 'bbb')) ;
            District.add(new SelectOption('ccc' , 'ccc')) ;
        }
        if(Selectedcity == 'Hyderabad')
        {
            District= new List<SelectOption>() ;
            District.add(new SelectOption('ddd' , 'ddd')) ;
            District.add(new SelectOption('eee' , 'eee')) ;
        }
        if(Selectedcity == 'Vizag')
        {
            District= new List<SelectOption>() ;
            District.add(new SelectOption('fff' , 'fff')) ;
            District.add(new SelectOption('ggg' , 'ggg')) ;
        }
        if(Selectedcity == 'Bangalore')
        {
            District= new List<SelectOption>() ;
            District.add(new SelectOption('hhh' , 'hhh')) ;
            District.add(new SelectOption('iii' , 'iii')) ;
        }
        if(Selectedcity == 'Kolar')
        {
            District= new List<SelectOption>() ;
            District.add(new SelectOption('jjj' , 'jjj')) ;
            District.add(new SelectOption('kkk' , 'kkk')) ;
        }
        if(Selectedcity == 'Chennai')
        {
            District= new List<SelectOption>() ;
            District.add(new SelectOption('lll' , 'lll')) ;
            District.add(new SelectOption('mmm' , 'mmm')) ;
        }
       
        if(Selectedcity == 'Mysore')
        {
            District= new List<SelectOption>() ;
            District.add(new SelectOption('nnn' , 'nnn')) ;
            District.add(new SelectOption('ooo' , 'ooo')) ;
        }
        return null ;
    }
}

 

<apex:page controller="multipicklist">
<apex:form >
     <apex:actionFunction name="GetCity" reRender="pb" action="{!RelatedCity}"/>
    <apex:pageBlock id="pb">
        <apex:pageBlockSection >
      <apex:selectList multiselect="false" size="1" value="{!SelectedState}" onchange="GetCity() ;">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!State}"/>
            </apex:selectList>
            
            <apex:selectList multiselect="false" size="1" value="{!Selectedcity}" onchange="GetDistrict() ;">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!City}"/>
            </apex:selectList>
             </apex:pageBlockSection>
             <apex:actionFunction name="GetDistrict" reRender="sam" action="{!RelatedDistrict}"/>
            <apex:pageBlockSection id="sam">
              
            <apex:selectList multiselect="false" size="1">
                <apex:selectOption itemLabel="--None--" itemValue=""/>
                <apex:selectOptions value="{!District}"/>
            </apex:selectList>
       </apex:pageBlockSection>
    </apex:pageBlock> </apex:form> </apex:page>