2013-06-25 73 views
3

我目前正在使用2個單獨的JQuery日期選擇器,我修改了格式以便能夠通過後端存儲在MySQL數據庫中。JQuery Datepicker獲取選定日期

<script> 
$(function() { 
$(".datepicker").datepicker({ 
     inline: true, 
     showOtherMonths: true, 
     dateFormat: 'yy-mm-dd', 
     dayNamesMin: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'], 
    }); 
}); 
</script> 

我的日期選擇在這裏稱爲

<input type="text" class='datepicker' name="datepicker1" /> 
<input type="text" class='datepicker' name="datepicker2" /> 

我一直在試圖讓選定的日期通過通過AJAX到PHP。我曾嘗試使用getDate函數,但沒有多少運氣。

$(「。datepicker」)。datepicker('getDate');

+0

它會返回第一個字段的值,而不是兩個 –

+0

見http://jsfiddle.net/arunpjohny/DpgLQ/1/ –

回答

10

由於您有兩個元素與類.datepicker,選擇器不知道哪個元素可供選擇。所以,你必須指定你試圖獲取日期的輸入的名稱。

first = $(".datepicker[name=datepicker1]").datepicker('getDate'); 
second = $(".datepicker[name=datepicker2]").datepicker('getDate'); 

演示:http://jsfiddle.net/hungerpain/TWmcD/

注:

不會val()比使用getDate更容易?你可以在mysql中設置自己的代碼日期並在客戶端爲你保存工作。

first = $(".datepicker[name=datepicker1]").val(); 
second = $(".datepicker[name=datepicker2]").val(); 
+0

感謝您的反饋。我用val()和getDate()去了。 – RyK

1

$(".datepicker").datepicker('getDate')將從$(".datepicker")選擇的第一個元素只返回日期值,在這種情況下,它可能是datepicker1

爲了得到你需要使用這兩個輸入字段的值

var dfs = $('.datepicker'); 
var f1 = dfs.filter('[name="datepicker1"]').datepicker('getDate'); 
var f2 = dfs.filter('[name="datepicker2"]').datepicker('getDate'); 

演示:Fiddle

+0

感謝您的反饋,非常感謝! – RyK

0

當您選擇的日期,你可以調用其他的Ajax功能來發送所選擇的日期PHP。

onClose: function(selectedDate) { 
    $.ajax({url: 'test.php', data: {date: selectedDate}}); 
} 
0

使用jQuery插件來獲得一個datepicker

<p>Date:<input type="text" id="datepicker"/></p> 
    <script> 
    $(function() { 
    $("#datepicker").datepicker(); 
    }); 
    </script> 

also see jsfiddle

相關問題