通过html表单将两个JQuery Datepicker变量传递给PHP变量?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过html表单将两个JQuery Datepicker变量传递给PHP变量?相关的知识,希望对你有一定的参考价值。

我修改了一个JQuery Datepicker,根据用户选择的日期选择周范围,并在onSelect上提交名为“weekDate”的html表单:

$(document).ready(function()
{  
    var startDate;
    var endDate;

    var selectCurrentWeek = function() {
        window.setTimeout(function () {
            $('.week-picker').find('.ui-datepicker-current-day a').addClass('ui-state-active')
        }, 1);
    }

    $('.week-picker').datepicker( {
        showOtherMonths: true,
        selectOtherMonths: true,
        onSelect: function(dateText, inst) { 
            var date = $(this).datepicker('getDate');
            startDate = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay());
            endDate = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay() + 6);
            var dateFormat = inst.settings.dateFormat || $.datepicker._defaults.dateFormat;
            $('#startDate').text($.datepicker.formatDate( dateFormat, startDate, inst.settings ));
            $('#endDate').text($.datepicker.formatDate( dateFormat, endDate, inst.settings ));

            selectCurrentWeek();

        },
        beforeShowDay: function(date) {
            var cssClass = '';
            if(date >= startDate && date <= endDate)
                cssClass = 'ui-datepicker-current-day';
            return [true, cssClass];
        },
        onChangeMonthYear: function(year, month, inst) {
            selectCurrentWeek();
        },

        onSelect : function(){
        $('#weekDate').submit();   
    }
    });

    $('.week-picker .ui-datepicker-calendar tr').live('mousemove', function() { $(this).find('td a').addClass('ui-state-hover'); });
    $('.week-picker .ui-datepicker-calendar tr').live('mouseleave', function() { $(this).find('td a').removeClass('ui-state-hover'); });
});

然后我有一个名为“weekDate”的HTML表单,当用户选择日期时触发onSelect Datepicker函数时捕获startDate和endDate值:

<form id="weekDate" name="weekDate" action="~" method="post"> 
    <input type="hidden" id="startDate" name="startDate" class="week-picker" />
    <input type="hidden" id="endDate" name="endDate" class="week-picker" />
</form>

然后我有一个php页面希望将#startDate和#endDate的值作为POST变量捕获:

$UpWeekStart = $_POST['startDate'];
$UpWeekEnd = $_POST['endDate'];

我的问题:当我尝试回显$ UpWeekStart和$ UpWeekEnd时,输出空白。请帮忙。

答案

你需要为.val()更改.text()

$('#startDate').val();

以上是关于通过html表单将两个JQuery Datepicker变量传递给PHP变量?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不通过 jQuery 提交的情况下强制进行 html5 表单验证

Jquery ajax提交表单几种方法详解

jQuery序列化表单时将制定元素排除在外

JQuery 将查询发布到两个不同的 php 文件

在 .html(' ') 之后通过 jquery 在 div 中显示一个表单;

用于 JQuery 登录的 HTML 表单或 div?