Javascript 只有一组特定日期的jQuery Datepicker

Javascript 只有一组特定日期的jQuery Datepicker,javascript,php,jquery,date,datepicker,Javascript,Php,Jquery,Date,Datepicker,我需要jQuery日期选择器的帮助。我有一系列的日期。我需要禁用除此数组中的日期之外的所有日期。我有代码,它的作用正好相反。我用PHP创建日期数组(我更了解它们的日期特性),然后将它们引入javascript。我正在使用带有刀片模板的laravel框架。如果有人可以修改我必须工作的内容或有更好的解决方案,那就太好了 启用日期: -每个星期三都可用,除非是星期三,然后使用下一个星期三 -从2015年7月3日起,每隔一个星期六提供一次 这是我的密码: HTML PHP 公共函数getMoreInfo

我需要jQuery日期选择器的帮助。我有一系列的日期。我需要禁用除此数组中的日期之外的所有日期。我有代码,它的作用正好相反。我用PHP创建日期数组(我更了解它们的日期特性),然后将它们引入javascript。我正在使用带有刀片模板的laravel框架。如果有人可以修改我必须工作的内容或有更好的解决方案,那就太好了

启用日期: -每个星期三都可用,除非是星期三,然后使用下一个星期三 -从2015年7月3日起,每隔一个星期六提供一次

这是我的密码:

HTML

PHP

公共函数getMoreInfo()
{
//收集入职日期
$time=time();
$dayName=日期(“D”,标准时间(“现在”);
//首先是星期三有空
如果($dayName==“Wed”)
{
$wed1=日期('m/d/Y',标准时间('1周星期三');
$wed2=日期('m/d/Y',标准时间('2周星期三');
$wed3=日期('m/d/Y',标准时间('3周星期三');
$sqlWed1=日期('Y-m-d',标准时间('1周星期三');
$sqlWed2=日期('Y-m-d',标准时间('2周星期三');
$sqlWed3=日期('Y-m-d',标准时间('3周星期三');
}
其他的
{
$wed1=日期('m/d/Y',标准时间('next周三');
$wed2=日期('m/d/Y',标准时间('1周星期三');
$wed3=日期('m/d/Y',标准时间('2周星期三');
$sqlWed1=日期(Y-m-d),标准时间(下周三);
$sqlWed2=日期('Y-m-d',标准时间('1周星期三');
$sqlWed3=日期('Y-m-d',标准时间('2周星期三');
}
$data['availableWed'][=$sqlWed1;
$data['availableWed'][=$sqlWed2;
$data['availableWed'][=$sqlWed3;
//获取可用的星期六->通过使用周数并检查奇数或偶数,可以导出每隔一个星期的一次
$week=date(“W”);//当前周数的php函数
//对sat进行为期几周的评估
对于($i=0;$iwith('data',$data));
}
产生:

谢谢各位

安东尼

如bobdye所述

return[array.indexOf(string)!=-1]


不会返回[array.indexOf(string)!=-1]
给你完全相反的结果吗?谢谢@bobdye,这完全正确。我知道我把最难的部分打掉了,只需要再看一眼。
                    <div class="form-group">
                        <div class="col-md-6">
                            {{ Form::text('orientation', '', array('class' => 'form-control', 'id' => 'orientation',
                            'placeholder' => 'Orientation Date', 'required' => 'required')) }}
                        </div>
                    </div>
$(function() {
var array = {{$data['availableSat']}}

$('#orientation').datepicker({
    beforeShowDay: function(date){
        var string = jQuery.datepicker.formatDate('yy-mm-dd', date);

        alert(array.indexOf(string));
        return [ array.indexOf(string) == -1 ]
    }
});
});
public function getMoreInfo()
{
    //Gather Orientation Dates
    $time = time();
    $dayName = date("D", strtotime("now"));

    //First get the available Wednesdays
    if ($dayName === "Wed")
    {
        $wed1 = date('m/d/Y', strtotime('+1 week Wednesday'));
        $wed2 = date('m/d/Y', strtotime('+2 week Wednesday'));
        $wed3 = date('m/d/Y', strtotime('+3 week Wednesday'));

        $sqlWed1 = date('Y-m-d', strtotime('+1 week Wednesday'));
        $sqlWed2 = date('Y-m-d', strtotime('+2 week Wednesday'));
        $sqlWed3 = date('Y-m-d', strtotime('+3 week Wednesday'));
    }
    else
    {
        $wed1 = date('m/d/Y', strtotime('next Wednesday'));
        $wed2 = date('m/d/Y', strtotime('+1 week Wednesday'));
        $wed3 = date('m/d/Y', strtotime('+2 week Wednesday'));

        $sqlWed1 = date('Y-m-d', strtotime('next Wednesday'));
        $sqlWed2 = date('Y-m-d', strtotime('+1 week Wednesday'));
        $sqlWed3 = date('Y-m-d', strtotime('+2 week Wednesday'));
    }

    $data['availableWed'][] = $sqlWed1;
    $data['availableWed'][] = $sqlWed2;
    $data['availableWed'][] = $sqlWed3;

    //Get the available Saturdays -> Every other sat can be derived by using week numbers and checking for odd or even
    $week = date("W"); //php function for current week number
    //Evaluate the sat for a few weeks out
    for ($i=0; $i<4; $i++)
    {
        $lastDigitWeek = substr($week,-1);
        //If the week is odd then there is orientation
        if ($lastDigitWeek == '1' || $lastDigitWeek == '3' || $lastDigitWeek == '5' || $lastDigitWeek == '7' || $lastDigitWeek == '9')
        {
            $time2 = strtotime('Saturday', $time);
            $time3 = gmdate("Y-m-d", $time2);
            $Saturdays[$i] = "N/A";
            //Disabled Saturdays
            $disableDates[] = $time3;
        }
        else
        {
            if ($dayName === "Sun")
            {
                $time2 = strtotime('+1 week Saturday', $time);
                $time3 = gmdate("m/d/Y", $time2);
                $time4 = gmdate("Y-m-d", $time2);
            }
            else
            {
                $time2 = strtotime('Saturday', $time);
                $time3 = gmdate("m/d/Y", $time2);
                $time4 = gmdate("Y-m-d", $time2);
            }
            //Available Saturdays
            $Saturdays[$i] = $time3;
            $saturdaysSQL[] = $time4;
        }

        $week = $week + 1;
        $time = $time + 604800;
    }
    $data['availableSat'] = json_encode($saturdaysSQL);
    $data['availableWed'] = json_encode($data['availableWed']);
    return View::Make('apps.newHire.menuMoreInfo')->with('data', $data);
}