我回答了一个问题,关于如何在循环中获取当前变量,我得到了解决方案:
for (i in ...)
{
...
href:"javascript:on_click('+i+');"...}
当我运行它时,循环正在向on_click函数发送字符串'i'而不是i的值。
我使用+variable+
错了吗?有人可以更详细地解释一下将变量包装在+中意味着什么以及它在我的情况下不起作用?
答案 0 :(得分:1)
是的,你是 - 如果你用"
开始一个字符串,你必须用"
结束它(反之亦然'
)。在SO处突出显示的语法也很好地证明了这一点。
href:"javascript:on_click("+i+");"...}
(正在发生的事情是'
被"
包围的字符串被视为常规'
字符,它不会启动也不会结束字符串文字在这里。)
答案 1 :(得分:0)
试试这个:
href:"javascript:on_click('" + i + "');"
答案 2 :(得分:0)
显示您缺少双引号以关闭字符串。 Javascript不会在带引号的字符串中进行变量插值。
尝试:
href:"javascript:on_click('" + i + "');"...}
答案 3 :(得分:0)
您正在混合引号。
应该是:
href: "javascript:on_click('" + i + "');"
注意在不变部分的两端是否需要双引号。