如何在 VisualForce 中设置日期格式?

发布于 2024-08-26 17:41:51 字数 581 浏览 5 评论 0原文

在 Salesforce 中,如果我将日期绑定到 VisualForce 页面,如何对其应用自定义格式?

示例:

<apex:page standardController="Contact">
  <apex:pageBlock title="Test">
      <p>{!contact.Birthdate}</p>
  </apex:pageBlock>                   
  <apex:detail relatedList="false" />
</apex:page> 

这将以默认格式输出日期:

2009 年 7 月 1 日星期四 09:10:23 GMT

我如何将其(例如)转换为 dd/mm/yyyy 格式,如下所示:

2009年1月7日

(希望这是一个相当简单的问题,但为了让 Salesforce 社区在这里继续下去,我认为我们需要一些简单的问题。)

In Salesforce, if I'm binding a date into a VisualForce page, how do I apply custom formatting to it?

Example:

<apex:page standardController="Contact">
  <apex:pageBlock title="Test">
      <p>{!contact.Birthdate}</p>
  </apex:pageBlock>                   
  <apex:detail relatedList="false" />
</apex:page> 

This will output a date in the default format:

Thu Jul 01 09:10:23 GMT 2009

How do I get it (for example) into dd/mm/yyyy format, like this:

01/07/2009

(Hopefully this is a fairly easy question, but to get the Salesforce community going on here I figure we need a few easy questions.)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

楠木可依 2024-09-02 17:41:51
<apex:outputText value="{0,date,MM'/'dd'/'yyyy}">
    <apex:param value="{!contact.Birthdate}" /> 
</apex:outputText>

完整文档链接: http://www.salesforce.com/我们/developer/docs/pages/Content/pages_compref_outputText.htm

<apex:outputText value="{0,date,MM'/'dd'/'yyyy}">
    <apex:param value="{!contact.Birthdate}" /> 
</apex:outputText>

link to full doc: http://www.salesforce.com/us/developer/docs/pages/Content/pages_compref_outputText.htm

暖风昔人 2024-09-02 17:41:51

答案似乎取决于上下文。我有一个 VF 页面,它使用 NOW() 的值预先填充任务的主题行。为了使用用户的区域设置进行记录,我在控制器中包含了格式化日期和日期时间字段的方法,大致如下:

  Datetime myDT = Datetime.now(); 
  String myDate = myDT.format();

但就在现在,在另一个 VF 页面中,我仅显示日期时间字段,我确认 SFDC 处理基于关于用户的区域设置。在这种情况下,cm.CampaignMembers 是来自控制器的变量:

    <apex:column>
      <apex:pageBlockTable value="{!cm.CampaignMembers}" var="cmp" >
        <apex:column headerValue="" value="{!cmp.Campaign.Name}" />
        <apex:column headerValue="" value="{!cmp.Status}"  />
        <apex:column headerValue="" value="{!cmp.FirstRespondedDate}" />
        <apex:column headervalue="" value="{!cmp.CreatedDate}"  />
      </apex:pageBlockTable>
    </apex:column>

The answer seems to depend on context. I have one VF page which pre-populates the Subject line of a task with the value of NOW(). To record it with the user's Locale settings, I included methods in the controller to format date and datetime fields, along these lines:

  Datetime myDT = Datetime.now(); 
  String myDate = myDT.format();

But just now in another VF page where I'm merely displaying a datetime field, I confirmed that SFDC handled formatting based on the user's Locale setting. That was in this context, where cm.CampaignMembers is a variable from the controller:

    <apex:column>
      <apex:pageBlockTable value="{!cm.CampaignMembers}" var="cmp" >
        <apex:column headerValue="" value="{!cmp.Campaign.Name}" />
        <apex:column headerValue="" value="{!cmp.Status}"  />
        <apex:column headerValue="" value="{!cmp.FirstRespondedDate}" />
        <apex:column headervalue="" value="{!cmp.CreatedDate}"  />
      </apex:pageBlockTable>
    </apex:column>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文