1

我是一名业余开发人员,正在寻找谷歌没有答案的独特解决方案。

我需要为课程创建一个时间表。每个科目有 6 小时的 6 名教师。对于我选择的科目,相应的教师应显示在相应的列表中。

请参阅下面的 VF 代码:

<b><i>{!$ObjectType.Class__c.fields.Firts_Hour_Subject__c.label}</i></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <apex:selectList size="1" multiselect="false" value="{!selectedSubject}">
            <apex:selectOptions value="{!Subject}"/>              
            <apex:actionSupport event="onchange" reRender="render1"/>
            </apex:selectList> 
             &nbsp;&nbsp;     
            <b><i>{!$ObjectType.Class__c.fields.First_Hour_Teacher__c.label}</i></b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <apex:selectList size="1" multiselect="false" id="render1">
            <apex:selectOptions value="{!RelatedTeacher}"/>              
            </apex:selectList>

这样一共重复 6 次。我不想创建和传递 6 个值,而是想使用单个变量/数组将值传递给顶点。

这是顶点代码:

public class listReturn {

        public String SelectedSubject {get;set;}

//Other code.....

//This is the method that returns the list of teachers based on subjects.

public List<SelectOption> getRelatedTeacher(){
                    List<SelectOption> RelatedTeacher=new List<SelectOption>();
                    List<Teacher__c> teach = new List<Teacher__c>();
                    teach = [select Teacher__c.Name from Teacher__c where Teacher__c.Subject_del__r.Name = :SelectedSubject];
                    RelatedTeacher.add(new SelectOption('--SELECT TEACHER--','--SELECT TEACHER--'));
                    for(Teacher__c e:teach){
                        RelatedTeacher.add(new SelectOption(e.Name,e.Name));
                    }
                    return RelatedTeacher; 
        }
}

(编辑)在这里我想实现类似于自定义中可用的依赖查找字段的东西。现在考虑到这一点,我正在尝试将主题选择列表中的值传递给顶点中的 {!selectedSubject} ..问题我'我面临的是我的最终输出只取最后一个选择列表的值并返回所有其他选择列表的教师列表..我想使用相同的 {!selectedsubject} var 并根据另一个输入来控制教师列表主题选择列表。

提前致谢!

4

1 回答 1

0

您可以<apex:repeat>按小时列表使用和驾驶它。

于 2013-05-08T10:41:46.003 回答