传递参数时出错

时间:2011-12-01 16:45:05

标签: javascript function parameters

我需要从另一个javascript函数中将两个值传递给javascript函数,如下所示:

Something.innerHTML = Something.innerHTML + "<input type = 'submit' name = 'bbb' value = 'aaa' onclick = funcName(" + var1 + "," + var2 + "); />";

其中:var1var2是两个变量, firebug 所示的值分别为23

i)如果我传递单个值,并且函数接收单个值,即funcName(var1)

,则不会出现错误

ii)如果我通过var1两次,即funcName(var1, var1);

,则不会出现错误

iii)当我通过var1, var2时, firebug 报告错误,即funcName(var1, var2);为:missing ) after argument list并报告以下行:funcName(2,3

修改 i)如果我用任何其他变量替换'var1',恐怕函数不起作用。

ii)我尝试使用以下方法附加两个参数:

temp = var1 +“ - ”+ var2;

然后在接收函数中'解码'它,这样你就可以传递一个'single'参数,但没有用。

2 个答案:

答案 0 :(得分:1)

onclick = funcName(" + var1 + "," + var2 + "); />"

应该是

onclick='funcName(" + var1 + "," + var2 + ");' />"
        ^-- missing                          ^--missing

答案 1 :(得分:0)

您没有在属性周围加上引号。此外,你不应该使用空格:

onclick=\"funcName(" + var1 + "," + var2 + ");\"