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.
Dropdown with a list of Strings
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
if size = 2

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

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

1 comments