我有一个全局变量var num_tab=1;
,一个创建链接href:
function Addsomething()
{
$("#tout").html("<a style=\""+"margin-left:-20px;"+"\" onClick=\"eval(num_tab=2)\" href=\""+"#tab1"+"\" data-toggle=\""+"tab"+"\">SELECT</a>");
Bla,Bla..
$("#champ1").append('<li id=\"1\" class="champ" onclick="insertAtCaret("sousTab'+num_tab+'");" value=\"1\">1</li>');
}
我想要做的是创建一个href,当点击时更改变量num_tab的值,但是如果你可以看到href在jquery html()里面,这让我对如何为一个值赋值感到困惑变量。我几乎尝试了所有内容:onClick=\"num_tab=2\"
,onClick=\""+num_tab+"=2\"
其实我尝试了一些东西:当我写onclick ='num_tab = 2; alert(“+ num_tab +”);'我仍然得到num_tab的初始值,看起来它更像是本地和全局变量的问题,我还不知道它。
答案 0 :(得分:1)
请不要使用eval()
。这是不安全的,而不是适合这项工作的工具。只需为onclick指定一个函数:
$("#tout").html("<a onclick='set_num_tab(2)'">); //fill out the rest of this line
function set_num_tab(value) {
num_tab = value;
}
这应该让你知道如何做到这一点。顺便说一句,没有理由你不能在onclick周围使用单引号。
或者,这可行:
$("#tout").html("<a onclick='num_tab=2'">);
但那太乱了。我尽量避免使用内联JavaScript。