我已经尝试过第二个选项,但没有考虑您的宝贵建议,但现在我已经完成了复杂的想法。我曾尝试传递值作为日期选择器,然后拆分它们,但这并没有帮助我。我尝试了下面的代码,我会向你解释我现在面临的挑战。如何将当前月份显示为文本并传递值?
//我创建了一个Map来存储你为不同语言指定的值。
public map<integer,string> monthmaps(){
map<integer, string> monthMapStatic = new map<integer, string>();
monthMapStatic.put(1, Label.PD_General_Month_Jan);
monthMapStatic.put(2, Label.PD_General_Month_Feb);
monthMapStatic.put(3, Label.PD_General_Month_Mar);
monthMapStatic.put(4, Label.PD_General_Month_Apr);
monthMapStatic.put(5, Label.PD_General_Month_May);
monthMapStatic.put(6, Label.PD_General_Month_Jun);
monthMapStatic.put(7, Label.PD_General_Month_Jul);
monthMapStatic.put(8, Label.PD_General_Month_Aug);
monthMapStatic.put(9, Label.PD_General_Month_Sep);
monthMapStatic.put(10, Label.PD_General_Month_Oct);
monthMapStatic.put(11, Label.PD_General_Month_Nov);
monthMapStatic.put(12, Label.PD_General_Month_Dec);
return monthMapStatic;
}
//然后我跑到下面的逻辑,但它只能运行于当前Month.//
for(Integer i=1; i<date.today().month()+1; i++){
this.monthList.add(new SelectOption(String.valueOf(i), monthmaps().get(i)));
}
//我传递的值作为一个字符串UI
monthSelection = String.valueOf(date.today().month());
问题:我不能给一个年头,或者我有默认的年份,我需要过去两年。因此,两个下拉选项被问
VF页:
<apex:selectList value="{!monthSelection}"
multiselect="false" size="1"
styleClass="form-control pull-left monthlyDropDown"
style="height: 33px;">
<apex:selectOptions value="{!monthList}" />
</apex:selectList>
所以,问题还在于,如何能够给从地图的选项给用户从上年选择一个月。
以下是他们以前如何将值传递给我们试图传递的字符串SQL。
joinQueryMonth += 'AND ((mcc.processing_year__c=\''+ thisMonthDate.year() +'\' AND mcc.processing_month__c=' + thisMonthDate.month() + ') \n';
我希望我这次清楚。
tnks现在,如果我想要有两个字段,一个用于过去两年的月份和其他字段,我将如何分解它?我这样问是因为,我的SQL以10月份为10,今年为默认年份,我希望今年有两个月(2017年)(本例中为8月份)和所有12个月,当我选择2016年。这将是很好,如果你能帮助我。你给我们的想法是太棒了,但以前的SQL形成不允许的,我想到的唯一选择是手动选择一年并传递值。 –
感谢队友我现在正在尝试这两个选项,我正在尝试最初建议的选项。请纠正我,如果我错了我会给的价值= {!monthlyselect},然后在控制端我给monthlyselect.year()和Monthselect.month()。我正在向你学习。谢谢你指导像我这样的人。 –
你是绝对正确的第二个选择,重新渲染可折叠的内部工作,我想知道如何通过第一个选项的值,请帮助。 –