将Perl变量传递给HTML调用的Javascript函数

时间:2014-02-04 21:48:34

标签: javascript html perl

我有这段代码

的Perl

my $var1 = to_json \@an_array1;
my $var2 = to_json \@an_array2;

HTML

<select id="example" title="example" onchange="doThis(<% $var1, $var2 %>)">

的JavaScript

function doThis(var1, var2){
    alert(var1);
    alert(var2);
};

但是它警告var1和var2未定义,因此不传递参数。 (n.b.它在Perl中被明确定义,完成了一个Dumper!)。

任何人都可以帮助将Perl变量传递给JavaScript的正确方法吗?我搜索过网站,但找不到任何可以帮助我解决问题的内容。

由于

1 个答案:

答案 0 :(得分:0)

我不确定你是什么模板引擎,但这对我很怀疑,

<select id="example" title="example" onchange="doThis(<% $var1, $var2 %>)">

vs

<select id="example" title="example" onchange='doThis("<% $var1 %>", "<% $var2 %>")'>

注意逗号和引号另外,确保<% %>是HTML转义内容。现在这是否安全是一个完全不同的问题。您希望在perl中确保$var1$var2没有",也不会在终端\中结束。它会变得丑陋。