Добрый вечер.
Есть template.php с содержимым:
<?
$ourParams = array(
'PATH_TO_TEMPLATE' => '/bitrix/component/catalog.element/test/',
'WORDS' => 'Раз, два',
'ARRAY' => array ('Test1' => 1, 'Test2' => 2),
)
?>
$(document).ready(function(){
var objJq = new ourJs(<?= json_encode($ourParams) ?>);
});
Поясняю, создаю массив с данными → с помощью json_encode перевожу его в json представление, чтобы в дальнейшем с этим массивом можно было работать в js → создаю объект «ourJs» и помещаю в него данный массив.
script.js с содержимым:
ourJs = function (params) {
var test = params.PATH_TO_TEMPLATE;
console.log(test);
};
Далее получаю данные массива в script.js, и тут момент, console.log(test) в теле функции выдает значение PATH_TO_TEMPLATE = /bitrix/component/catalog.element/test/, console.log(test) вне тела функции выдает PATH_TO_TEMPLATE = undefiend.
Вопросы:
1. Как получить значения вне тела функции? В Jq слаб, обучение в процессе, застрял на этом вопросе.
2. Если способ описанный выше кажется вам с какой-нибудь точки зрения не правильным, буду рад другим