【发布时间】:2009-12-11 13:58:13
【问题描述】:
我有以下代码:
var numberOfSelectedOptions = new Array();
numberOfSelectedOptions[0]=0;
numberOfSelectedOptions[1]=0;
numberOfSelectedOptions[2]=0;
$("a.tagvariantoption").live("click", function(){
alert(numberOfSelectedOptions[2]);
});
警报总是显示“未定义”。但是,在实时事件之外发出警报时,它可以完美地工作。关于为什么我的数组在现场活动中未定义或未知的任何想法?
这里有一些额外的信息:
var startcount = 0;
var numberOfSelectedOptions = new Array();
numberOfSelectedOptions[0]=0;
numberOfSelectedOptions[1]=0;
numberOfSelectedOptions[2]=0;
$("a.tagvariantoption").live("click", function(){
alert(startcount); //gives 0
alert(numberOfSelectedOptions[0]); //gives undefined???
)};
HTML 工作正常,因为 startcount 打印正确,但我的数组在事件中保持未知。
【问题讨论】:
-
你能把你的html添加到问题中
-
这里没有足够的信息来回答 - 这在 Firefox 3.5.5 和 IE 6.0 中对我来说很好。
-
html 工作正常,检测到点击并打印警报。数组在事件中是未知的,而普通变量完全可以访问
-
完美运行查看演示站点jsbin.com/avuxa
-
numberOfSelectedOptions 是否在您页面的其他位置声明或操作?