SalesForce、VisualForce Pages 和 jQuery 日期选择器

SalesForce, VisualForce Pages, and the jQuery date picker

我遇到了一些问题,希望您能提供帮助。我打算使用 SalesForce 的 "built in" 日期选择器,但看起来(至少根据我的实验)您只能在每个 VisualForce 页面上使用一个。

所以我选择了 jQuery 路线。我可以让 jQuery 日期选择器工作(我在页面上有两个)。

问题是,当页面通过验证时,如果 "required" 元素之一不存在,它会将日期更改为 UTC 格式。

例如,如果日期 1 是 mm/dd/yy 格式,我将其设置为 03/01/2017,它会输入较长的延长日期。

有一次,我确实把它放到了 mm/dd/yy 格式的日期中,但它们会在一天前(提前一天)关闭,这不好,我无法弄清楚如何解决它。我现在不在办公室,一到那里我就会看看是否可以登录,实际上 post 我拥有的 jQuery。

好的,这是代码:

$( function() {
                            var ad = $('input[id$="adId"]' );
                            var pld = $('input[id$="pldId"]' );
                            
                            ad.datepicker({minDate: 0, dateFormat: "mm/dd/yy"});
                            pld.datepicker({minDate: 0, dateFormat: "mm/dd/yy"});
                            
                            if(ad.val() != ""){
                                $('input[id$="adId"]').datepicker({dateFormat: "mm/dd/yy"}).datepicker("setDate", new Date(ad.val()));
                            }
                            
                            if(pld.val() != ""){
                                $('input[id$="pldId"]').datepicker({dateFormat: "mm/dd/yy"}).datepicker("setDate", new Date(pld.val()));
                            }
                            
                          } );

我在 outputPanel 中使用日期选择器元素。

所以基本上过程是这样的:

  1. 转到页面。
  2. 填写除了几项以外的所有内容,但要确保日期在那里。 日期采用 mm/dd/yy 格式,因此它们将显示为 03/01/2017。
  3. 进行验证时,错误消息显示表单不完整,日期现在采用 UTC 日期格式(即 "Thu Jan 1 19:30:00 UTC+0530 1970")而不是 mm/dd/yy。

认为这是一个简单的格式问题。非常感谢任何建议。

我认为我们可以在 VF 页面中使用许多日期选择器。 有不同的方法可以做到这一点 您可以使用 apex:inputfield 并将字段与日期类型字段绑定

<apex:page standardcontroller=’Account’>
<apex:form>
<apex:inputfield value=”{!Account.DateTypeField}”
</apex:form>
</apex:page

> 其他方式> 您也可以使用标签

<apex:page standardcontroller=’Account’ id=”id”>
<apex:form id=”form”>
<apex:inputText styleClass="css" value="{!datename}" size="10" id="demo" onfocus="DatePicker.pickDate(false, 'id:form:demo', false);" />
</apex:form>
</apex:page>

第 3 .

<apex:page >
<apex:form >
<table>

<td> Date<br></br><input id="t" name="dat" onfocus="DatePicker.pickDate(false,
't', false);" size="20" tabindex="20" type="text" /><span class="dateFormat">[&nbsp;<a
href="DatePicker.insertDate('3/3/2017', 't', true);"
>2/3/2011</a>&nbsp;]</span></td>
</table>
</apex:form>
</apex:page>

此致,

阿杰