0

下面是我的时间选择器的当前 JQuery。如果时间是从#from字段中选取的,它将最大时间设置#to为选定时间。

如果我从#from可以接机的最大时间选择凌晨#to1 点是凌晨 1 点。

var osmaxtime = '20';
$('#from').timepicker({ 'minTime': '9','maxTime': '8','scrollDefaultNow': true,'step': 60 });
$('#from').on('changeTime', function() {
    var sFrom=$(this).val();
    $('#to').timepicker({ 'minTime': '9','maxTime':sFrom,'scrollDefaultNow': true,'step': 60 });
});
$('#to').timepicker({ 'minTime': '9','maxTime': osmaxtime,'scrollDefaultNow': true,'step': 60 });

#to现在我想根据字段增加字段的最长时间#from

#from例如,如果我从最大时间为#to凌晨 4 点(+4 小时)接起凌晨 1点

$('#from').on('changeTime', function() {
        var sFrom=$(this).val();
        var sFromPuls=sFrom+4;// Here is the problem because the value of sFrom is in String or something else.
        $('#to').timepicker({ 'minTime': '9','maxTime':sFrom,'scrollDefaultNow': true,'step': 60 });
    });
4

3 回答 3

1

用 Number 包围 var 以使 jQuery 将其识别为 number 以向其添加 4

$('#from').on('changeTime', function() {
  var sFrom=$(this).val();
  var sFromPuls=Number(sFrom)+4; // Surround with Number()
  $('#to').timepicker({ 'minTime': '9',
  'maxTime':sFromPuls, //write correct var name 
  'scrollDefaultNow': true,
  'step': 60 });
});
于 2014-07-30T09:09:05.763 回答
0

您可以参考onSelect 文档并在您的时间选择器上使用它

$('#example').datetimepicker({
    onSelect: function(){
              //Here you can add 4 hours to the start time
        }
});
于 2014-07-30T09:01:45.230 回答
0

我的问题已通过以下代码解决-

$('#from').timepicker({ 'minTime': 8,'maxTime': 20,'scrollDefaultNow': true,'step': 60 });
    $('#from').on('change', function() {
        var fromTime=$(this).val();
        var hrs = Number(fromTime.match(/^(\d+)/)[1]);
        var format = fromTime.match(/00(.*)$/)[1];
        if (format == "pm" && hrs < 12) hrs = hrs + 12;
        if (format == "am" && hrs == 12) hrs = hrs - 12;
        var hours = (hrs+4).toString();         
        var sFromPuls= (parseInt(osSeletecdTime)+4).toString();
        $('#to').timepicker({ 'minTime': fromTime,'maxTime':hours ,'scrollDefaultNow': true,'step': 60 });
    });
于 2014-08-12T09:40:30.690 回答