2012-05-15 61 views
2

我有一個簡單的日期選擇器的文本字段:從jQuery 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返回第二種日期格式。我不需要編寫完整的代碼,如果您只需獲取上述函數來提醒所選日期的星期幾,那就太棒了。

回答

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]); 
    } 
});​ 
+3

令人驚歎! :)我敢打賭,你從w3schools獲得了陣容:P – VisioN

+1

@VisioN - 對不起,我避免了w3schools。 – j08691

+0

爲什麼選擇投票?我的回答有問題嗎? – j08691

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/

-1

這將是DATEFORMAT:「d '但我找不到讓日期選擇器返回第二種類型的方法的日期格式。

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)); 
    } 
});​ 
7

有點遲到了,但真正的解決方案,我相信,是利用兩個日期選擇器性能的

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

Setting these options會自動用正確的格式填充元素#your-span。無需額外的代碼!

+0

好點 - 如果要求只是填寫頁面上的另一個字段非常有用。 – Alnitak