用Apex显示日期时间:outputtext

时间:2013-02-19 12:57:00

标签: salesforce visualforce

有没有办法使用<apex:outputText>标记在用户的时区显示时间?我使用以下标记,没有Apex控制器:

<apex:outputLink rendered="{! fld == 'Due__c'}" onclick="updateDueDate('{!r.Id}');return  false;" styleClass="actionLink">
    <apex:outputText value="{0,date,M/d/yyyy h:mm a}" >
        <apex:param value="{!r[fld]}"/>
    </apex:outputText>
</apex:outputLink>

结果是日期以GMT时区显示。请告诉我们如何在当前用户的时区显示它。

3 个答案:

答案 0 :(得分:1)

你可以这样做但你必须在控制器中格式化它。 在那里你可以使用类似的东西:

DateTime.now().format('dd-MM-yyyy HH:mm:ss',Timezone);

但你必须在控制器中完成它。您无法在visualforce页面或公式中执行此操作。

答案 1 :(得分:0)

答案 2 :(得分:0)

我有同样的问题,它对我有用的唯一方法是使用outputField而不是输出文本。这将格式化为用户本地

<apex:outputField value="{!date_field__c}"/>