将一个smarty修饰符应用于JS?

时间:2014-07-30 01:55:17

标签: javascript php smarty

快速问题我有一些JS,并希望将smarty修饰符应用于JS中的var。

在smarty中,我有一个名为cash的修饰符,用于转换货币格式的值

例如。

  

$ price =“1”;

     

{$价格|现金}

输出£1.00

请有人建议我如何将此修饰符应用于以下js:

  

var price

我也想特别使用smarty,因为我有其他修饰符,我想应用于js。 (只是有人要告诉我创建一个javascript函数)

由于

1 个答案:

答案 0 :(得分:0)

我担心你无法对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警报:

&pound; 1.00
相关问题