Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to convert php array into javascript array to use with the Jquery UI datepicker?

Right now I am using a manually inputted array of dates called disable to disable dates in the jquery UI datepicker with the beforeShowDay method. This is working fine, however, I have a php variable $disablethese which is storing a dynamic array of dates to disable. For some reason, I can't seem to convert my php array into a javascript array (which I'm calling unavailabledates). It doesn't throw any errors but it just doesn't work block out the dates the same way as the static array.

<script type="text/javascript">
    var unavailabledates = <?php echo json_encode($disablethese); ?>;
    </script>
    <script src="js/datepicker-admin.js"></script> 

Here is datepicker-admin.js

 $(document).ready(function() {
        var disable = ["2014-01-03","2014-01-13","2014-01-23"];
            $('#fromDate').datepicker({
            beforeShowDay: function(date) {
                if($.inArray($.datepicker.formatDate('yy-mm-dd', date ), disable) > -1) {
                    return [false, "highlighted", "Booked out"];
                } else {
                    return [true, "", "available"];
                }
            }
        });
    });
like image 958
chap Avatar asked Jun 27 '26 18:06

chap


1 Answers

you can use $.parseJSON function.

<script type="text/javascript">
var unavailabledates = $.parseJSON('<?php echo json_encode($disablethese); ?>');
</script>
<script src="js/datepicker-admin.js"></script>
like image 106
anurupr Avatar answered Jun 30 '26 07:06

anurupr



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!