更改期权变更的时间戳值

时间:2018-02-15 07:47:54

标签: javascript jquery twitter-bootstrap timepicker

我的页面中有两个选项:

如果我点击Option1:不应显示timepicker。

如果我点击Option2:应显示timepicker,并将分钟值四舍五入到最接近的四分之一;

现在在测试时,在添加选项之前,我已添加此代码以在$(document).ready event中初始化我的timePicker:

$('#pushTime').timepicker().on('changeTime.timepicker', function (e) {                         
  // update spanTime with current value
});

此代码获得最接近的四分之一小时;我需要在document.ready中执行此操作,但需要更改选项,因为我想从系统获取最后更新日期;用户可以在30分钟后打开我的页面,如果我只是在打开页面时依赖于初始化时间戳,那么日期将不会被更新;那么当用户点击Option2时如何才能实现?

以下是我的功能:

function CheckScheduleRadioButton(elem) { 

   $(elem).find('input:radio').prop('checked', true);
   if ($(elem).find('input:radio').prop('value') == "option2") {   
      // initialize timepicker here
   }    
} 

我试图在这个函数中初始化时间选择器,但它没有工作; 我也试过这个:

var currentTime = currentDate.toLocaleString('en-US', { hour: 'numeric', minute: 'numeric', hour12: true });
 $('#pushTime').timepicker({
                    'step': 15
 }).val(currentTime); 

它正在更新timePicker,但具有确切的值,而不是四舍五入到下一季度;

示例8:13不会改为8:15

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我不清楚你是如何实现这个功能的。但只是通过上面的描述,我得到了一个基本的想法,即检查是否选中了值为“选项2”的单选按钮,然后应该初始化时间选择器。

您可以这样做:

function CheckScheduleRadioButton(elem) {
  if ($(elem).find('input:radio[value="Option 2"]').is(':checked')){
    $('input.timepicker').timepicker({});
  }
}