2012-03-29 6 views
1

У меня есть многомерный массив, здесь:Передача массива PHP в JavaScript с помощью JSON

$noticeDate = json_encode($noticesDates); 

и я хочу, чтобы передать массив в JavaScript:

вар unavailableDates [] = $ noticeDate;

Обе переменные находятся в одном файле php, поэтому существует небольшая точка, использующая $ .getJSON, которая в основном ищет переменную во внешнем файле. Однако, как передать объект в массив javascript в том же скрипте.

Приветствия

ответ

4

Вы не можете напрямую назначить PHP переменные в JS, но вы можете использовать что-то вроде этого:

<script> 
    var unavailableDates = jQuery.parseJSON('<?php echo json_encode($noticeDates) ?>'); 
</script> 
+0

@ Решение Кристофа не имеет синтаксического анализа JSON на стороне клиента, который включен здесь. Это более полное решение. –

+0

var unavailableDates = jQuery.parseJSON (''); document.write (unavailableDates); похоже, не распечатывает его – bobo2000

+0

Почему вы хотите распечатать его? Это объект, который вы просто не можете просто распечатать. Если это ваша цель, вы должны использовать другой формат imho. – erdeszt

0

Попробуйте это: $.pareseJSON()

вот пример:

 


var json = "<?php echo json_encode($noticesDates); ?>"; 

jsArray = jQuery.parseJSON(json); 
 
+0

Как это даже пытается ответить на вопрос? Пожалуйста, измените свой ответ на нечто более похожее на него. – hitautodestruct

1

использовать это

var array = JSON.parse("<?php echo json_encode($noticesDates) ?>"); 
Смежные вопросы