Вывести php переменную через js
Есть js внутри php
<?php
$pos = 'shape';
$modules =& JModuleHelper::getModules($pos);
foreach ($modules as $module){
$shape_module = JModuleHelper::renderModule($module);
}
?>
<script>
jQuery(document).ready(function($) {
$('h2:eq(1)').before(' <?php echo $shape_module ;?> ');
});
</script>
Разумеется мое <?php echo $shape_module ;?> внутри не работает! :)
Как вывести значение $shape_module с помощью этого js?
Благодарю!
При чем, если выводить внутри js текст, работает, если выводить переменную вне js, тоже работает, не работает моя переменная внутри js.
Задача вывести значение переменной после определенного Html-тега
Ответы (1 шт):
Автор решения: Quazimorda
→ Ссылка
Когда-то делали так:
<script>
let myvar = <?php echo $shape_module; ?>;
</script>
а потом уже использовали переменную. То есть подставляли в код js переменную, а не php, но есть мнение, что это костыль.
Допишу, что я имел в виду целиком. Я по-прежнему считаю, что это до известной степени костыль, но ваш код выглядел бы так:
<?php
$pos = 'shape';
$modules =& JModuleHelper::getModules($pos);
foreach ($modules as $module){
$shape_module = JModuleHelper::renderModule($module);
}
?>
<script>
let myvar = <?php echo $shape_module; ?>;
jQuery(document).ready(function($) {
$('h2:eq(1)').before(myvar);
});
</script>
Код я не проверял, тут уж вы сами попробуйте.