在数据表中设置选项列表的默认值

时间:2010-07-11 18:28:07

标签: salesforce visualforce

我正在尝试在数据表中创建动态选项列表。我可以使用单个选项列表设置默认值,但是当有多个选项列表时则不能。我还需要能够将任何更改的值存储在任何行上,这有望被绑定到列表中的某个变量。

为了实现这一点,我在我正在使用的对象(称为Vendor)上创建了一个新字段,名为“selected_vendor__c”:

<apex:column headerValue="Vendor">

 <apex:selectList value="{!i.selected_vendor__c}" size="1" required="true" >
 <apex:selectOptions value="{!VendorList}"/>
 </apex:selectList> 

然后是控制器:

           public List<selectOption> VendorList {get {
    List<selectOption> myVendorList = new List<selectOption>();
    for (Vendor__c vend : [select Name,id from Vendor__c])
        myVendorList.add(new selectOption(vend.id, vend.name));
    return myVendorList;
    }
    private set;
}

我遇到的问题是,选项列表中的值始终是列表中的第一个选项,而不是我尝试将其动态设置的选项。我希望保存时它会被“{!i.selected_vendor__c}”绑定,但是我无法将其设置为默认值。

1 个答案:

答案 0 :(得分:1)

我自己想出来了。问题是i.selected_vendor__c的值必须是与供应商列表对应的id,而不是名称。