带可选时间部分的Salesforce日期/时间值

带可选时间部分的Salesforce日期/时间值,salesforce,apex-code,visualforce,Salesforce,Apex Code,Visualforce,在我的Salesforce应用程序中,我希望用户输入日期/时间值,但时间部分是可选的。有没有办法做到这一点。谢谢 如果时间是可选的,只需使用00: Datetime myDate = datetime.newInstance(2012, 10, 5, 00, 00, 0); 不能使用两个字段(一个日期字段和另一个时间文本字段)。然后将这些字段连接到日期时间公式字段中。这不会有帮助吗?作为一种解决方案,我没有使用自定义对象字段类型的DateTime值,而是在VF控制器级别保留单独的日期值和时间值

在我的Salesforce应用程序中,我希望用户输入日期/时间值,但时间部分是可选的。有没有办法做到这一点。谢谢

如果时间是可选的,只需使用00:

Datetime myDate = datetime.newInstance(2012, 10, 5, 00, 00, 0);

不能使用两个字段(一个日期字段和另一个时间文本字段)。然后将这些字段连接到日期时间公式字段中。这不会有帮助吗?

作为一种解决方案,我没有使用自定义对象字段类型的DateTime值,而是在VF控制器级别保留单独的日期值和时间值,并用这些值组成一个DateTime

Apex代码如下所示

 // Compos DateTime with Date & Time values 
    this.jobOccurrence.Date_Time_Sampled__c = DateTime.parse(this.dateSampled.trim() + ' ' + this.timeSampled.trim());
<apex:page>

   <!-- Style sheet for timepicker -->
   <link rel="stylesheet" media="all" type="text/css" href="{!URLFOR($Resource.jquery_ui_custom)}" />

   <style>
       #ui-datepicker-div, .ui-datepicker{ font-size: 70%; }     
      .ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
      .ui-timepicker-div dl { text-align: left; }
      .ui-timepicker-div dl dt { height: 25px; margin-bottom: -25px; }
      .ui-timepicker-div dl dd { margin: 0 10px 10px 65px; }
      .ui-timepicker-div td { font-size: 90%; }
      .ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; 

   </style>


   <!-- javascript for timepicker -->
   <script type="text/javascript" src="{!URLFOR($Resource.jquery)}"></script>
   <script type="text/javascript" src="{!URLFOR($Resource.jquery_ui_custom_min)}"></script>
   <script type="text/javascript" src="{!URLFOR($Resource.jquery_ui_timepicker_addon)}"></script>

   <script type="text/javascript">  

     /* Set Timepicker to component */    
     function setTimepicker(componentObj) {      
      $(componentObj).timepicker({ show24Hours: false, timeFormat: 'hh:mm TT', ampm: true});          
     }
   </script> 

 <apex:form id="frmMain">

   <!-- Date -->                       
   <apex:inputText value="{!dateSampled}" onfocus="DatePicker.pickDate(false, this.id, false);"/>
   <!-- Time --> 
   <apex:inputText value="{!timeSampled}" onfocus="setTimepicker(this);"/> 

 </apex:form>

</apex:page>
VisualForce代码如下所示

 // Compos DateTime with Date & Time values 
    this.jobOccurrence.Date_Time_Sampled__c = DateTime.parse(this.dateSampled.trim() + ' ' + this.timeSampled.trim());
<apex:page>

   <!-- Style sheet for timepicker -->
   <link rel="stylesheet" media="all" type="text/css" href="{!URLFOR($Resource.jquery_ui_custom)}" />

   <style>
       #ui-datepicker-div, .ui-datepicker{ font-size: 70%; }     
      .ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
      .ui-timepicker-div dl { text-align: left; }
      .ui-timepicker-div dl dt { height: 25px; margin-bottom: -25px; }
      .ui-timepicker-div dl dd { margin: 0 10px 10px 65px; }
      .ui-timepicker-div td { font-size: 90%; }
      .ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; 

   </style>


   <!-- javascript for timepicker -->
   <script type="text/javascript" src="{!URLFOR($Resource.jquery)}"></script>
   <script type="text/javascript" src="{!URLFOR($Resource.jquery_ui_custom_min)}"></script>
   <script type="text/javascript" src="{!URLFOR($Resource.jquery_ui_timepicker_addon)}"></script>

   <script type="text/javascript">  

     /* Set Timepicker to component */    
     function setTimepicker(componentObj) {      
      $(componentObj).timepicker({ show24Hours: false, timeFormat: 'hh:mm TT', ampm: true});          
     }
   </script> 

 <apex:form id="frmMain">

   <!-- Date -->                       
   <apex:inputText value="{!dateSampled}" onfocus="DatePicker.pickDate(false, this.id, false);"/>
   <!-- Time --> 
   <apex:inputText value="{!timeSampled}" onfocus="setTimepicker(this);"/> 

 </apex:form>

</apex:page>

#ui日期选择器div,.ui日期选择器{字体大小:70%;}
.ui timepicker div.ui小部件头{margin bottom:8px;}
.ui时间选择器div dl{text align:left;}
.ui时间选择器div dl dt{高度:25px;边距底部:-25px;}
.ui时间选择器div dl dd{margin:0 10px 10px 65px;}
.ui timepicker div td{font size:90%;}
.ui tpicker网格标签{背景:无;边框:无;边距:0;填充:0;
/*将时间选择器设置为组件*/
函数setTimepicker(componentObj){
$(componentObj).timepicker({show24Hours:false,timeFormat:'hh:mm TT',ampm:true});
}

Hi mast0r!非常感谢您的想法。但一旦我们使用自定义对象定义了DateTime字段,我们必须在Visual Force页面级别设置时间药剂,否则将产生验证错误。谢谢。Hi user1420829!很抱歉,您的答案对我来说不够清楚,请您进一步解释。谢谢。