Back to Top

How to create Dynamic Drop-Down in Visualforce Page

In this post, I am going to share the information How to create Dynamic Drop-Down in Visualforce Page.

apex:selectlist  & apex:selectoption

Gratefully, there is a way to effectively create a Dynamic Drop-Down in Visualforce Page with list of standard & custom object records based on a query.

<apex:selectlist> : A list of options that allows users to select only one value or multiple values at a time, depending on the value of its multiselect attribute.

<apex:selectoption> : The component must be a child of . To bind your options from Apex to your visualforce using apex:selectOptions you need to use the SelectOption object type in Apex.

Below is a snapshot of the code from the apex controller, and also the Visualforce page.

Apex:

public with sharing class dynamicpicklist {

  
        /**
         * Webkul Software.
         *
         * @category  Webkul
         * @author    Webkul
         * @copyright Copyright (c) 2010-2016 Webkul Software Private Limited (https://webkul.com)
         * @license   https://store.webkul.com/license.html
         */
 public dynamicpicklist()
    {
    
    }

    public List<SelectOption> getdynamiclist() {
        List<SelectOption> options = new List<SelectOption>();
        options.add(new SelectOption('INDIA','INDIA'));
        options.add(new SelectOption('US','US'));
        options.add(new SelectOption('BRAZIL','BRAZIL'));
        return options;
    }

}

Visualforce Page :

<apex:page controller="dynamicpicklist">

   <!-- 
        /**
         * Webkul Software.
         *
         * @category  Webkul
         * @author    Webkul
         * @copyright Copyright (c) 2010-2016 Webkul Software Private Limited (https://webkul.com)
         * @license   https://store.webkul.com/license.html
         */
         -->

  <apex:form >
      <apex:selectList size="1">
          <apex:selectOptions value="{!dynamiclist}"></apex:selectOptions>
      </apex:selectList>
  </apex:form>

</apex:page>

Output
dynamic datapicklist

if size = 2

sizevalue

Record type dropdown

Apex:

public with sharing class dynamiccontactlist {

        /**
         * Webkul Software.
         *
         * @category  Webkul
         * @author    Webkul
         * @copyright Copyright (c) 2010-2016 Webkul Software Private Limited (https://webkul.com)
         * @license   https://store.webkul.com/license.html
         */

public List<contact> ContactTemp = new List<Contact>();
    public dynamiccontactlist()
    {
    
    }
    
    public List<SelectOption> contactlist
    {
        get
        {
            ContactTemp = [Select firstname,lastname from contact];
            
            contactlist = new List<SelectOption>();
            
            for(contact con : ContactTemp)
            {
                contactlist.add(new SelectOption(con.lastname, con.lastname));
            }
            return contactlist;
        }
        set;
    }
}

Visualforce Page :

<apex:page controller="dynamiccontactlist">

 <!-- 
        /**
         * Webkul Software.
         *
         * @category  Webkul
         * @author    Webkul
         * @copyright Copyright (c) 2010-2016 Webkul Software Private Limited (https://webkul.com)
         * @license   https://store.webkul.com/license.html
         */
         -->

  <apex:form >
      <apex:selectList size="3">
          <apex:selectOptions value="{!contactlist}"></apex:selectOptions>
      </apex:selectList>
  </apex:form>

</apex:page>

Output

HERE SIZE = 3

CONTACTLIST

Support

That’s all for How to create Dynamic Drop-Down in Visualforce Page in Salesforce, still have any issue feel free to add a ticket and let us know your views to make the product better http://webkul.com/ticket/index.php

. . .

Leave a Comment

Your email address will not be published. Required fields are marked*


1 comments

  • Umesh B.P
  • Back to Top

    Message Sent!

    If you have more details or questions, you can reply to the received confirmation email.

    Back to Home
    On this page

    Table of Content

    Back to top