从jQuery datepicker获取两种日期格式?

时间:2012-05-15 15:59:57

标签: javascript jquery user-interface datepicker

我有一个简单的日期选择器文本字段:

<input type="text" name="book_on" id="book_on" value="<?php echo $today; ?>"

jQuery如下:

$('#book_on').datepicker({
        dateFormat: 'mm/dd/y'
      });

这一切都非常简单,但我还需要在页面的其他位置以不同的格式显示所选日期 - 特别是,当选择日期时,我需要显示它在一周中的哪一天页面上显示<span>

这将是dateFormat: 'D',但我找不到让datepicker返回第二种日期格式的方法。我不需要编写完整的代码,如果您可以通过上面的函数来提醒所选日期的星期几,那就太棒了。

4 个答案:

答案 0 :(得分:7)

派对有点晚了,但我认为真正的解决方案是利用两个日期选择器属性

    altField: "#your-span",
    altFormat: "D",

Setting these options会自动使用正确的格式填充元素#your-span。无需额外的代码!

答案 1 :(得分:3)

您是否正在寻找类似 jsFiddle example 的内容?

jQuery的:

var days = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
$('#book_on').datepicker({
    dateFormat: 'mm/dd/y',
    onSelect: function(event, ui) {
        var dayOfWeek = $(this).datepicker('getDate').getUTCDay();
        $('#day').val(days[dayOfWeek]);
    }
});​

答案 2 :(得分:2)

您可以使用onSelect事件并按照以下方式执行操作:

var weekday = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];
$("#book_on").datepicker({
    onSelect: function(dateText, inst) {
        var day = new Date(dateText).getDay();
        $("span").text(weekday[day]);
    }
});​

DEMO: http://jsfiddle.net/LXCMD/

答案 3 :(得分:-1)

  

这将是dateFormat:'D',但我找不到让datepicker返回第二种日期格式的方法。

Datepicker插件有utility function专门用于输出您想要的任何格式的日期,例如。

var t = $('#picker').datepicker('getDate');
var myDate = $.datepicker.formatDate('D', t);

因此:

$('#book_on').datepicker({
    dateFormat: 'mm/dd/y',
    onSelect: function(dateText, inst) {
        var date = $(this).datepicker('getDate');
        $('#span').text($.datepicker.formatDate('D', date));
    }
});​