我有一个div,onclick调用一个javascript函数。但是,当我用其中的参数调用javascript时,它无法这样做。这很奇怪。
以下代码在点击'deals'按钮
时调用函数deals()$("#content").append('<div class="malldetails"><a href="javascript:void(0);"><button class="left" onclick="deals()">Deals</button></a></div>');
function deals(){
alert("This works");
}
但是下面的代码不起作用。
$("#content").append('<div class="malldetails"><a href="javascript:void(0);"><button class="left" onclick="deals(mallName)">Deals</button></a></div>');
function deals(NameOfMall){
alert("This does not work");
}
我认为这应该是一个小问题,但却无法弄清楚。请帮助我出色的编码员!非常感谢!
答案 0 :(得分:0)
您必须在mallName
周围使用引号$("#content").append('<div class="malldetails"><a href="javascript:void(0);"><button class="left" onclick="deals(\'mallName\')">Deals</button></a></div>');
function deals(NameOfMall){
alert("This does not work");
}
答案 1 :(得分:0)
如果在触发该onclick时未确定mallName
(我怀疑它是),则不会发出警报。
答案 2 :(得分:0)
打开你的borwser上的javascript错误(如果使用IE)并查看它是否显示错误。如果是,则需要先声明变量。
所以这取决于这个javascript的放置位置。代码中显示的是,错误是由于未定义的变量。
答案 3 :(得分:0)
您的代码正在运行..检查mallName是否已初始化。可能未定义。
答案 4 :(得分:0)
onclick="deals("Lechmere Mall")" //wont work.
检查
onclick="deals(\'Lechmere Mall\')" //will work.
工作正常。
检查mallName是否使用alert初始化。
alert(mallName);
$("#content").append('<div class="malldetails"><a href="javascript:void(0);">
<button class="left" onclick="deals(mallName)">Deals</button></a></div>');
function deals(NameOfMall){
alert("This does not work");
}