3

我目前正在使用 2 个单独的 JQuery 日期选择器,我已经修改了格式以便能够通过以存储在后端 MySQL 数据库中。

<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');

4

4 回答 4

11

由于 class 有两个元素.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();
于 2013-06-25T03:13:19.423 回答
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' );

演示:小提琴

于 2013-06-25T03:13:27.687 回答
0

当您选择日期时,您可以调用另一个 Ajax 函数将所选日期发送到 PHP。

onClose: function( selectedDate ) {
    $.ajax({url: 'test.php', data: {date: selectedDate}});
}
于 2013-06-25T03:16:30.993 回答
-1

使用jquery插件获取datepicker

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

另见 jsfiddle

于 2013-06-25T05:01:15.153 回答