如何从JavaScript函数中的Smarty模板发送数组作为参数

时间:2018-08-03 10:40:59

标签: javascript arrays function parameters smarty

问题描述:

我在.tpl文件中有一个带有200个项目的Array($ all_article_data)。  现在,我想在JavaScript函数中将此数组作为Param发送。

<span onclick="on('{$all_article_data}')">Example</span>

JAVASCRIPTFUNCTION

function on(data){
     alert(data);
}

然后我在文本“ array”中朗诵:(看看我使用的这个数组中是否有东西:

function on(data) {
   var i;
   for(i=0 ; i<=data.length; i++){
       alert(data[i]);
   }
}

这以不同的警报形式显示 我需要在javascript中操纵此数组,并使用 值。

感谢小费

最诚挚的问候

1 个答案:

答案 0 :(得分:0)

您应该在数组上使用php的json_encode

$encoded= json_encode($all_article_data);

<span onclick="on('{$encoded}')">Example</span>

然后在您的JavaScript中将其解析回去:

let jsonData = JSON.parse(data);

然后您可以根据需要使用jsonData