Java Script 中onclick事件不执行
str+="<divstyle='color:blue'onclick=\"ShowRouting(busSolutions["+i+"].routings["+j+"]...
str +="<div style='color:blue' onclick=\"ShowRouting(busSolutions[" + i + "].routings[" + j + "]);\" 为什么点击这个方案 不执行onclick 事件 ,,,急求
展开
展开全部
你先把它改成onclick='alert(1)'试一下,看看能不能执行,如果不能说明你生成的html有问题,如果能,说明你javascript方法写的有问题。这是调试javascript的常用方法,希望对你有帮助吧。如果还不行,把代码贴出来
追问
onclick='alert(1)' 改了 是可以的 下面的这个就是Javascript的语句,并未发现什么问题
function ShowRouting(busRouting) {
alert("执行了,显示公交线路");
// if (MapControl1.mapName != 'lianyungang') {
// return;
// }
// if (!busRouting) {
// alert(resource_inputBusRouting);
// return;
// }
// MapControl1.ShowRouting(busRouting);
}
谢谢这位大哥或大姐了
追答
那么改成这样:
function ShowRouting(busRouting) {
alert("1");
if (MapControl1.mapName != 'lianyungang') {
alert("2");
return;
}
if (!busRouting) {
alert("3");
return;
}
alert("4");
MapControl1.ShowRouting(busRouting);
alert("5");
}
看看程序的执行路径,也可以使用firefox的firebug,打断点跟踪一下比较方便。总之一句话,要定位出错的语句是哪一句。举个例子:假如"4"弹出来了,而"5"没有弹出来,那么就是中间那句有问题。
再提一句,如果是这种情况:....能够弹出对话框,而....执行不了(即使你的方法里面只有alert(1);这么一句话),那么建议你换一个方法名,先试试最简单的名字比如function aaa(...){...},我曾经遇到过一个方法名就调用不了,换个名字就好了。另外还有,就是注意你的参数是否传递正确,你可以先不传参数试试,如果能调用,再加上参数,尽量先写一些简单的确定能用的参数名,能执行正确了,再换成有意义的名字。
如果上面的你都做了,还不能找到错误,我觉得就不是你代码的问题了,很可能就是浏览器的bug了。祝你好运
展开全部
你的脚本很长吗?如果不长,请都贴出来
分两步来查看你的错误,
第一:str +="<div style='color:blue' onclick=\"ShowRouting(busSolutions[" + i + "].routings[" + j + "]);\" 改成
str +="<div style='color:blue' onclick=\"alert(busSolutions[" + i + "].routings[" + j + "]);\"
先看你的参数是否有问题
第二:再看你的方法的问题。
分两步来查看你的错误,
第一:str +="<div style='color:blue' onclick=\"ShowRouting(busSolutions[" + i + "].routings[" + j + "]);\" 改成
str +="<div style='color:blue' onclick=\"alert(busSolutions[" + i + "].routings[" + j + "]);\"
先看你的参数是否有问题
第二:再看你的方法的问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询