jQuery日期时间选择器-如何在javascript中获取日期

jQuery datetimepicker - how to get date in javascript?

本文关键字:javascript 获取 取日期 日期 时间 选择器 jQuery      更新时间:2023-09-26

所以我在文本输入上附加了一个jQuery DateTimePicker v2.4.1。我想这样做,当用户点击并更改选择器的月份或年份时,它会更新表单中的日期,因为这似乎不是插件的默认行为。

    $(timepicker).datetimepicker({
        format: "d M Y h:i A",
        step: 15,
        validateOnBlur: false, //use ValidateDateTime.js instead of jquery default
        closeOnInput: true,
        closeOnDateSelect: true,
        onClose: function() {
            var validatedDate = validateDate($(timepicker).val());
            if (validatedDate != false) {
                $(timepicker).val(validatedDate);
            }
        },
        changeMonth: true,
        changeYear: true,
        onChangeMonth: function() {
            //pop name of month into field and update calendar
            var d = $(this).datetimepicker('getDate');
            console.log(d + this.html());
            /*
            $(timepicker).datetimepicker.trigger("select.xdsoft", [d]);
            */
        }
    });

出现的一个问题是:var d = $(this).datetimepicker('getDate');实际上并没有检索日期,只是返回datetimepicker元素。

我如何在js中获取日期,或者更具体地说,当用户在下拉列表中点击一个月时,我如何强制更新。

编辑:看纪录片http://xdsoft.net/jqplugins/datetimepicker/&多亏了瑞士,现在看起来是这样的:

onChangeMonth: function(date, $el) {
    //pop name of month into field and update calendar
    var str = dateTimeToString(date);
    $($el).datetimepicker({ value: str });
},

简单!

onChangeMonth函数(current_time,$input){}
onChangeYear函数(current_time,$input){}
onChangeDateTime函数(current_time,$input){}

根据其文档,每个onChange函数都将Date变量作为第一个参数。

    onChangeMonth: function(date,$el) {
        var d = date.getDate();
        //d is selected date.
        var m = date.getMonth() + 1; //+1 because .getMonth() returns 0-11
        //m is selected month.
    }