我遇到了一个愚蠢的问题...... 我宣布了一个名为leadingZero的新变量。我保存修改后的.js文件,并在leadingZero分配上使用断点运行项目,在观察器窗口中,它在传递此行后表示未定义,但此处的所有其他声明都正常工作,我可以看到指定的值。不用说,getObject调用现在不起作用。
var leadingZero = 0; //new variable
var chkActive;
var chkSubscribe;
var hdnItem = getObject('hdnItemCounter');
var ItemCount = parseInt(hdnItem.value) + 1;
for (intCounter = 2; intCounter <= ItemCount; intCounter++) {
chkActive = getObject('dgrProductList_ctl0' + leadingZero + intCounter + '_chkActive');
}
答案 0 :(得分:2)
没有得到未定义的问题,但是必须将toString()添加到leadingZero以便在console.log中呈现,所以也许这也是你的问题。
答案 1 :(得分:1)
你确实在下面的行上设置了断点,不是吗?
因为如果你在行var leadingZero = 0;
上设置它,它会在评估行之前停止,这解释了观察者中未定义的值。
另外,正如gillesc指出的那样,您的leadingZero
必须是字符串,否则您需要将intCounter
和leadingZero
相加,而不是将它们连接起来。
答案 2 :(得分:0)
问题似乎是js的更改未加载到缓存中。即使在关闭之后,即重建项目并再次运行,我仍然需要在页面上按ctrl + f5来加载新的javascript