创建SelectOption列表数组

时间:2013-07-04 01:54:05

标签: salesforce apex-code visualforce

我尝试使用visualforce页面设置在线测试,该页面从salesforce COPE_Tests__CCOPE_Questions__CCOPE_Options__c中的3个对象中提取数据。一旦用户选择了特定测试,我想我可以像这样打电话来获取所有其他数据:

questions = [select id, name, question_body__c, 
(select id, name, option_body__c from COPE_options__r order by name ASC)
from COPE_questions__c where COPE_test__c = :tid];

然后使用apex:repeatapex:selectRadio/apex:selectOption生成实际的测试表单。但由于某种原因,它不会渲染放射性物体。所以我似乎需要创建selectOption列表然后使用apex:selectOptions。但我不知道如何设置它。如何让它为每个问题自动创建公开list<selectOption>

有没有办法设置list<selectOption>

的数组

1 个答案:

答案 0 :(得分:0)

我不知道自动创建它,但在循环中遍历你的问题对象应该很容易,有些事情超出了

的范围。
List<List<SelectOption> options = new List<List<SelectOption>;
for(COPE_Questions__C q : questions){
    List<SelectOption> list = new List<SelectOption>();
    for(COPE_options__r op : q.COPE_options__r){
         list.add(new SelectOption(op.id, op.option_body__c);
    }
    options.add(list);
}

希望它有所帮助。