【问题标题】:How to get selected day/month and year from jquery datepicker如何从 jquery datepicker 中获取选定的日期/月份和年份
【发布时间】:2011-01-11 14:28:23
【问题描述】:

我正在使用 Jquery UI Datepicker 插件,我试图从 datepicker 中的不同变量中获取选定的日期、月份和年份(最终解决方案是将所有 3 个变量分配给隐藏字段)。

代码如下:

        $(function() {
        $("#_StartDate").datepicker(
            {
                 onSelect: function(dateText, inst) {
                    var startDate = new Date(dateText);
                    var selDay = startDate.getDay();
                    alert(selDay);
                 }
            }
        );
    });

我选择了日期“1/10/2011”,它返回“1”。我选择了日期“2011 年 1 月 25 日”,它返回“2”。我在这里做错了什么?

感谢您的帮助!

【问题讨论】:

  • 什么格式的 jquery 返回 datetext 变量中的日期?这可能会抛出 Date 对象。

标签: jquery uidatepicker


【解决方案1】:

getDay 返回星期几:)

你可以使用:

getFullYear 年份
getDate 月份中的某天
getMonth 年份月份

遵循 getter 的完整列表(来自 DevDocs):

Date.prototype.getDate() 根据当地时间返回指定日期的月份日期 (1-31)。
Date.prototype.getDay() 根据当地时间返回指定日期的星期几 (0-6)。
Date.prototype.getFullYear() 返回年份(4-4 位数字指定日期的数字年)根据当地时间。
Date.prototype.getHours()根据当地时间返回指定日期的小时(0-23)。
Date.prototype.getMilliseconds() 根据当地时间返回指定日期的毫秒数 (0-999)。
Date.prototype.getMinutes() 返回分钟(0-59) 根据当地时间返回指定日期的月份。
Date.prototype.getMonth() 根据当地时间返回指定日期的月份(0-11)。
Date.prototype.getSeconds() 根据loc返回指定日期的秒数(0-59) al time.
Date.prototype.getTime() 将指定日期的数值返回为自 1970 年 1 月 1 日 00:00:00 UTC 以来的毫秒数(之前的时间为负数)。
Date.prototype.getTimezoneOffset() 返回当前语言环境的时区偏移量(以分钟为单位)。
Date.prototype.getUTCDate() 返回根据通用时间在指定日期的月份 (1-31) 中的第几天(日期)。
Date.prototype.getUTCDay() 返回星期几(0-6)在指定日期根据通用时间。
Date.prototype.getUTCFullYear() 根据通用时间返回指定日期的年份(4 位数为 4 位数)。
Date.prototype.getUTCHours() 根据通用时间返回指定日期的小时数 (0-23)。
Date.prototype.getUTCMilliseconds() 返回根据通用时间在指定日期的毫秒(0-999) e.
Date.prototype.getUTCMinutes() 根据世界时返回指定日期的分钟(0-59)。
Date.prototype.getUTCMonth() 根据世界时返回指定日期的月份(0-11)。
Date.prototype.getUTCSeconds() 根据世界时返回指定日期的秒数(0-59)
Date.prototype.getYear() 根据当地时间返回指定日期的年份(通常为 2-3 位)。请改用 getFullYear()**。

【讨论】:

    【解决方案2】:

    它只返回.getDay()(一周中的第 0-6 天),您需要执行以下操作:

    var selDay = ...
    var selMon = startDate.getMonth();
    var selYear = startDate.getYear();
    

    参考: http://www.w3schools.com/jsref/jsref_obj_date.asp

    注意

    特别注意返回什么,getDay() -> 0-6 getMonth() -> 0-11 等...都在我提供的参考资料中。

    【讨论】:

      【解决方案3】:

      从输入字段中获取 val:

      var start_date=$('input#start_date').val();
      

      【讨论】:

        猜你喜欢
        • 2017-01-19
        • 2012-02-16
        • 2021-07-22
        • 2021-12-16
        • 2013-04-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多