perl哈希表和javascript变量
我有一个CGI脚本, 我想输入一个从perl哈希表到java脚本var tt的值。 (我在代码中提到了哪些有效,哪些无效) perl: js: 警报将打印如下内容:perl哈希表和javascript变量,perl,Perl,我有一个CGI脚本, 我想输入一个从perl哈希表到java脚本var tt的值。 (我在代码中提到了哪些有效,哪些无效) perl: js: 警报将打印如下内容: {"192.116.153.32":["examle1.txt","examle2.txt",...]} {"192.116.153.32":["examle1.txt","examle2.txt",...]} JavaScript和Perl是不同的语言。JS代码和CGI脚本将在不同的计算机上运行 CGI脚本创建一个页面,然后
{"192.116.153.32":["examle1.txt","examle2.txt",...]}
{"192.116.153.32":["examle1.txt","examle2.txt",...]}
JavaScript和Perl是不同的语言。JS代码和CGI脚本将在不同的计算机上运行
- CGI脚本创建一个页面,然后将该页面传输到浏览器。不管这个页面是什么类型的数据,任何JS代码都只是这个脚本的普通数据。例如,您的代码段可能会变成
这是浏览器看到的。Perl代码对浏览器没有任何意义$('#示例tr')。单击(函数(){ $(这是“tr”)。每个(函数(索引,tr){ 变量行=$('td',tr).map(函数(索引,td){ 返回$(td.text(); }); var d=行[0]; var test='对应的设备';//正在工作 var tt='@{$devices{'+''+d+'+'''+'}};//不工作 警报(tt);
- 然后浏览器呈现页面并执行任何JS脚本。此时,与CGI脚本没有任何连接
- CGI脚本创建一个页面,然后将该页面传输到浏览器。不管该页面是什么类型的数据,任何JS代码都只是该脚本的普通数据。例如,您的代码片段可能会变成
这是浏览器看到的。Perl代码对浏览器没有任何意义$('#示例tr')。单击(函数(){ $(这是“tr”)。每个(函数(索引,tr){ 变量行=$('td',tr).map(函数(索引,td){ 返回$(td.text(); }); var d=行[0]; var test='对应的设备';//正在工作 var tt='@{$devices{'+''+d+'+'''+'}};//不工作 警报(tt);
- 然后浏览器呈现页面并执行任何JS脚本。此时,与CGI脚本没有任何连接
use JSON; # imports encode_json, decode_json, to_json and from_json.
# simple and fast interfaces (expect/generate UTF-8)
$utf8_encoded_json_text = encode_json \%devices;
js:
警报将打印如下内容:
{"192.116.153.32":["examle1.txt","examle2.txt",...]}
{"192.116.153.32":["examle1.txt","examle2.txt",...]}
您可以使用Perl模块将对Perl哈希的引用转换为包含JavaScript关联数组的字符串:
use JSON; # imports encode_json, decode_json, to_json and from_json.
# simple and fast interfaces (expect/generate UTF-8)
$utf8_encoded_json_text = encode_json \%devices;
js:
警报将打印如下内容:
{"192.116.153.32":["examle1.txt","examle2.txt",...]}
{"192.116.153.32":["examle1.txt","examle2.txt",...]}
注意:无论何时混合这样的语言,在perl中使用单引号字符串构建javascript都是很有帮助的。这样你就不必逃避所有的美元符号。
$
。注意:无论何时混合这样的语言,在perl中使用单引号字符串构建javascript都是很有帮助的。这样你就不必担心了o跳过你所有的美元符号。$
。谢谢你,你能解释更多关于我的例子吗?@user3485339我添加了一个例子。谢谢你,你能解释更多关于我的例子吗?@user3485339我添加了一个例子。