Применить модификатор Smarty к JS?
Быстрый вопрос У меня есть немного JS и я хочу применить модификатор smarty к переменной в JS.
В Smarty у меня есть модификатор, называемый наличными, который преобразует значение в формате валюты
например.
$ price = "1";
{$ Цена | наличные}
выдаст £1,00
Пожалуйста, кто-нибудь может посоветовать, как я могу применить этот модификатор к JS ниже:
Вар цена
также я хотел бы специально использовать smarty, так как у меня есть другие модификаторы, которые я хотел бы применить к js. (просто если кто-то скажет мне создать функцию javascript)
Спасибо
1 ответ
Боюсь, вы не можете оперировать переменными JavaScript, чтобы получить их значение. Smarty может работать только со своими переменными - они либо приходят из PHP, либо задаются в Smarty. Переменная JavaScript не может быть в любом случае установлена на Smarty, поэтому вы не можете этого сделать.
Но если вы хотите назначить переменную PHP/Smarty с модификатором для JavaScript, это должно быть возможно:
В PHP:
$price = '1';
$smarty->assign('price', $price);
Модификатор Smarty:
function smarty_modifier_cash($value)
{
return '£ '.number_format($value,2);
}
Шаблонный файл Smarty:
{$price|cash}
<script type="text/javascript">
{literal}
var cash = {/literal}'{$price|cash}'{literal};
alert (cash);
{/literal}
</script>
В результате вы отобразили:
£ 1.00
на вашем сайте и получите предупреждение JavaScript с:
£ 1.00