如何从 jQuery 时间选择器获取时间值?

3
我正在尝试从时间选择器中获取所选时间的值,但是迄今为止我没有得到任何返回值,即使在我的HTML时间选择器输入框内也没有显示任何值。
我尝试了一些方法,但还没有成功,
方法1:
$('#datetimepicker4').on('selectTime', function() {
    var time = $('#datetimepicker4').timepicker('getTime');
    alert(time);
    // this will be a Date object that includes the time
});

方法2:

$("#datetimepicker4").on('change paste keyup', function(){
    var time = $(this).val();
    alert(time);
    var getTime = time.split(":"); //split time by colon
    var hours = parseInt(getTime[0])+2; //add two hours
    //set new time
    var newTime = hours+":"+getTime[1];
    //set time picker
    $("#datetimepicker5").timepicker('option',{'minTime': newTime});
});

我正在尝试用alert进行调试,但是没有弹出提示框,因此我的两个函数都无法工作,这意味着,即使没有与时间选择器有关的控制台错误,我也找到了问题所在,我想设置当前时间为最小时间3小时。

1个回答

2
我认为你不需要使用 getTime,你可以直接选择输入框的值。
(function($) {
    $(function() {
        $('input.timepicker').timepicker();
        $("#getdate").on('click',function(){
           $("#time").text($("#timepicker").val())
        })
    });

})(jQuery);

如果想要在时间选择器变化时使用下面的代码:

 $('document').ready(function(){
                $('#time').timepicker();
                $('#time').on('changeTime', function() {
                    var x = $("#time").val();
                    $('#d_time').text(x);
                });
            });

点击这里可以查看一个工作实例。

更新的示例


你展示的工作示例看起来不错,但我需要它在时间更改时完成,而不是按钮点击。 - Kamran Hassan
它可以通过按钮点击和 .blur 事件工作,但其他输入框的 on change 事件没有任何变化。我也为其他输入框使用了一些验证,这可能会产生冲突,但是控制台上没有出现任何错误。 - Kamran Hassan
它能够工作,所以我批准了你的答案,非常感谢。但是,在我的网站上它不起作用。 - Kamran Hassan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接