Как включить определенные c даты, взятые из базы данных, в jQuery datepicker - PullRequest
0 голосов
/ 01 августа 2020

Я хочу включить эти даты в datepicker. Я новичок в этом. Как я могу включить даты, взятые из базы данных, для этой функции?

Это мой код:

<script>

jQuery(function(){

    //var enableDays = ["2020-08-02","2020-08-03","2020-08-04"];

    var enableDays=["' . implode('", "', $dates) . '"];


    function enableAllTheseDays(date) {
        var sdate = $.datepicker.formatDate( 'yy-mm-dd', date)
        if($.inArray(sdate, enableDays) != -1) {
            return [true];
        }
        return [false];
    }

    $('#datepicker').datepicker({dateFormat: 'yy-mm-dd', beforeShowDay: enableAllTheseDays});
})

</script>

Он работает правильно, когда я указываю свои даты var enableDays = ["2020-08-02","2020-08-03","2020-08-04"] в этом формате вручную (как я прокомментировал выше).

Но я хочу взять доступные даты из базы данных и включить эти даты в моем средстве выбора даты.

Я получаю доступные даты из базы данных в этом формате .

$dates=Array ( [0] => 2020-08-02 [1] => 2020-08-03 [2] => 2020-08-04 )

После того, как я использую (var enableDays=["' . implode('", "', $dates) . '"]) для преобразования указанного выше формата индексированного массива в этот формат квадратных скобок, все даты будут недоступны.

1 Ответ

1 голос
/ 01 августа 2020

В этом вопросе отсутствует код «между». Значит, это происходит из вашего MySQL с использованием php правильно? Вы хотите, чтобы массив от php до go до JavaScript переменной?

<?php
    
    // This is the input array... You did not explain, where it comes.. but here it is now:
    $dates = array(
        0 => '2020-08-02',
        1 => '2020-08-03',
        2 => '2020-08-04',
    );
    
    // Prints out as JavaScript dates variable, and implodes the php array with commas and "" around them
    echo '<script>var dates=' . json_encode($dates) . '</script>';
?>

Вывод:

<script>var dates=["2020-08-02", "2020-08-03", "2020-08-04"] </script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...