Область видимости PHP -> Шаблон области видимости Javascript?
У кого-нибудь есть чистые шаблоны для включения php-переменных в область видимости js?
Два способа, которые я делал раньше, это либо вводить фактический вызов из базового шаблона внутри готовой оболочки документа.
(шаблон jQuery/Smarty)
{literal}
$(document).ready(function() {
TargetClass.targetVar = {/literal}{$phpVar}{literal};
});
{/literal}
Также установите его в тег и извлеките его из DOM после выполнения JS.
HTML
<link id="phpVar" value="{$phpVar}" />
JS
var phpVar = $('#phpVar').attr('value');
,
Кто-нибудь из вас нашел лучший метод?
1 ответ
Вы можете очень легко сгенерировать JSON из php. Это хороший способ получить целый массив (или даже дерево вложенных массивов) данных в javascript за один раз.
Вы можете положить его в <script>
заголовок или получить его асинхронно с помощью AJAX.
Вот документы php:
http://us3.php.net/manual/en/ref.json.php
если вы вставите JSON непосредственно в код, то он уже в формате Javascript. Если вы получите его обратно из запроса ajax, это будет одна большая строка, и вы можете проанализировать ее, просто передав ее в eval()