Jquery日期选择器日期格式分别获取变量

时间:2012-11-21 14:26:27

标签: jquery

大家好我正在尝试使用日期格式从日期选择器中分别获取变量。我想得到这些变量的日期,月份和年份,但是如何?

这是我的剧本

<script type="text/javascript">
    $(function () {
        $('.date').datepicker({ dateFormat: 'dd.MM.yy' });

    });
    </script>

2 个答案:

答案 0 :(得分:2)

要从datepicker获取日期,您应该使用$(".date").datepicker("getDate")

代码:

var date = $(".date").datepicker('getDate');
alert(date.getDate());         // Day of the month
alert(date.getMonth());        // Month with a zero index
alert(date.getDay());          // Day of the week
alert(date.getFullYear());     // The "full" year, e.g. 2011

希望这有帮助!

答案 1 :(得分:1)

你可以试试这个

$(function(){
    $('.date').datepicker({ 
        dateFormat: 'dd.MM.yy', 
        onSelect:function(text, ui){
            var dt=text.split('.');
            var d=dt[0]; m=dt[1]; y=dt[2];
            console.log(d); // day
            console.log(m); // month
            console.log(y);  // year
        }
    });
});​

每次从datepicker中选择日期时,您都会在三个单独的变量中获得日期,月份和年份。

DEMO

<强>更新 另外请记住,用户可以通过键入直接从键盘更改/输入日期,因此在这种情况下,您必须使用$('.date').on('change', function(){...})来跟踪文本框更改事件。

// textbox change
$('.date').on('change', function(){
    var dt=$(this).val();
    if(dt.match(/^(\d{2}).([a-zA-Z]+).(\d{4})$/))
    {
        var dt=dt.split('.');
        var d=dt[0]; m=dt[1]; y=dt[2];
        console.log(d);
        console.log(m);
        console.log(y);
    }
    else alert('Invalid date format !\n\nValid format example: 05.December.2012');
});

DEMO(使用文本框更改事件)。