如何从datepicker ui获得年份?

时间:2012-09-08 07:34:08

标签: javascript jquery jquery-ui

我有用户选择日期的代码。

我需要获得价值年份并将其放入div。

我该怎么做?

jsFissl Demo

很多Thx。 代码:

<div class="demo">
<p>Date: <input type="text" id="datepicker"></p>
</div>
<div id="Year"></div>

$("#datepicker").datepicker({
        changeMonth: true,
        changeYear: true

    });

       $("#Year").text($("#datepicker").val()); 

我尝试使用.substring(0, 4),但我不知道如何。

3 个答案:

答案 0 :(得分:1)

您也可以将该输入值转换为Javascript日期,并从其方法中获取所有内容。

  

http://jsbin.com/ugaxob/2/edit

$(".btn-getdate").click(function() {

  var dt = $("#datepicker").val(),
      d = new Date(dt);    

  $("#Year").text(d.getFullYear());

});

狂野并使用MomentJs插件,您将获得如此多的乐趣(更新实时示例)


如果您想在插件上执行某项操作,即对事件执行操作,您应该会在DatePicker中看到事件选项卡,您可以在其中找到onSelect

我的实时示例已更改为根据选择进行操作,无需按任何链接或按钮。

答案 1 :(得分:0)

显示您想要提取的年份。

HTML:

<meta charset="utf-8">
    <div class="demo">
    <p>Date: <input type="text" id="datepicker"></p>
    <button>Show year</button>
</div><!-- End demo -->

JS:

$(function() {
    $("#datepicker").datepicker({
        changeMonth: true,
        changeYear: true
    });

    $("button").click(function() {
        var split = $("#datepicker").val().split('/');
        alert(split[2]);
    });
});​

String类的split方法将字符串分割并作为数组返回。

编辑:这可以做你想要的一切。 看看onSelect事件。

$(function() {
    $("#datepicker").datepicker({
        changeMonth: true,
        changeYear: true,
        onSelect: function(dateText) { 
            var split = $("#datepicker").val().split('/');
            $("#Year").text(split[2]);
        }
    });
});​

答案 2 :(得分:0)

这个怎么样:JSFiddle  无需进行字符串操作,只需使用datepicker中的选定日期创建Date对象,并使用getFullYear()方法获取选定年份...

$(function() {
    $("#datepicker").datepicker({

       onSelect: function(date) {
        var d = new Date(date);
        alert(d.getFullYear());
       },
       changeMonth: true,
       changeYear: true
    });

});