如何在不改变apex:selectOption顺序时设置Visualforce下拉框默认选中指定项
解决方案
可以直接通过给<apex:selectList>添加value属性并设置为目标选项的itemValue值来实现,无需修改选项顺序、不用Apex代码或脚本:
<apex:page > <apex:form> <apex:selectList size="1" value="Dog"> <apex:selectOption itemLabel="Ape" itemValue="Ape"/> <apex:selectOption itemLabel="Bat" itemValue="Bat"/> <apex:selectOption itemLabel="Cat" itemValue="Cat"/> <apex:selectOption itemLabel="Dog" itemValue="Dog"/> <apex:selectOption itemLabel="Elephant" itemValue="Elephant"/> </apex:selectList> </apex:form> </apex:page>
原理说明
<apex:selectList>的value属性用于指定当前选中项的值,直接设置为"Dog"后,Visualforce会自动匹配对应itemValue为"Dog"的<apex:selectOption>,将其设为默认选中状态。- 这种方式完全基于Visualforce标签的原生属性实现,不需要任何后端逻辑或前端脚本,同时保留了原有选项的顺序。
内容的提问来源于stack exchange,提问作者Harish Rudroju
相关产品推荐
相关产品推荐

