如何将变量从AJAX响应传递给JS函数onclick

时间:2016-02-24 08:39:27

标签: javascript

我希望在点击链接时将变量的值传递给javascript函数作为参数。我从AJAX响应中获取此值。为此,我已完成此代码,但在测试未定义的控制台中收到错误。

var test = data.fileName;

alert('Hello world ' + test); // this gives me Hello world download/15__Priority____4x6__Label.JPEG
var lbDownHtml = '';
lbDownHtml += "<div><a href='" + data.functpath + "' ><span>Download Label</span></a>";
lbDownHtml += "</div>";
lbDownHtml += "<div><a id='print_Link' onclick='print_funct(test);return false;'><span>Print Label</span></a>";
lbDownHtml += "</div>";

function print_funct (test) {
    alert('Hello world '+test);
}

如何将变量测试传递给我的函数?

2 个答案:

答案 0 :(得分:2)

您需要将test变量与字符串:

连接起来
lbDownHtml += '<div><a id="print_Link" onclick="print_funct(' + test + ');return false;"><span>Print Label</span></a></div>';

答案 1 :(得分:0)

您的代码将test视为字符串,将其变为如下所示的变量赋值。

lbDownHtml += "<div><a id='print_Link' onclick='print_funct(" + test + ");return false;'><span>Print Label</span></a></div>;"

这将把有价值的测试保存到函数调用中。

当你的测试应该是一个字符串

时,你的请求

编辑

lbDownHtml += "<div><a href='" + data.functpath + "' ><span>Download Label</span></a>";
lbDownHtml += "</div>";
lbDownHtml += "<div><a id='print_Link' onclick='print_funct(\"" + test + "\");return false;'><span>Print Label</span></a>";
lbDownHtml += "</div>";