我正在使用文件扩展名为“.tpl”的PrestaShop页面。我将javascript代码自动完成,如下所示:
var currencies = [
{ value: 'Afghan afghani', data: 'AFN' },
{ value: 'Albanian lek', data: 'ALL' },
{ value: 'Algerian dinar', data: 'DZD' },
{ value: 'European euro', data: 'EUR' },
{ value: 'Angolan kwanza', data: 'AOA' },
{ value: 'East Caribbean dollar', data: 'XCD' },
{ value: 'Vietnamese dong', data: 'VND' },
{ value: 'Yemeni rial', data: 'YER' },
{ value: 'Zambian kwacha', data: 'ZMK' },
{ value: 'Zimbabwean dollar', data: 'ZWD' },];
虽然我也有foreach
类似下面的示例:
{foreach from=$currencies item=currency}
{$currency.name}
{$currency.code}
{/foreach}
如何使用currencies
输出foreach
值?我试过这段代码:
var currencies = [
{foreach from=$currencies item=currency}
{ value: '{$currency.name}', data: '{$currency.code}' },
{/foreach},];
答案 0 :(得分:0)
var newArray = [];
for (var i=0; i < currencies.length; i++) {
newArray.push({value: whatever, data: whateverVar})
}
我仍然不确定你想要什么,但这是我能从你想要的东西给出的最好的。
答案 1 :(得分:0)
您可以使用json_encode
将PHP数组输出到JavaScript
这是TPL中的JavaScript代码
var currencies = JSON.parse('{$currencies|json_encode}');
{$currencies|json_encode}
会输出类似这样的内容
[{ value: 'Afghan afghani', data: 'AFN' },
{ value: 'Albanian lek', data: 'ALL' },
{ value: 'Algerian dinar', data: 'DZD' }, ...]
此输出将传递给JavaScript函数JSON.parse
,它将输出字符串转换为JavaScript对象