我确信这里有一些简单的东西,我错过了。这个代码部分是在我的网站的客户端:功能不会超过for循环的末尾
function test(){
var insert;
var insertArray = [];
var arrayLength = document.getElementById("arrayLength").value;
var length = parseInt(arrayLength)
var o;
var int;
var insertID
var i;
for (i = 0; i<=length; i++){
int = i.toString();
insertID = "insertNumber" + int;
insert = document.getElementById(insertID).value;
insertArray.push(insert);
};
o = JSON.stringify(insertArray);
google.script.run.withSuccessHandler(successDisplay)
.mailroomDataEntry(o);
}
循环工作,因为它应该,但功能似乎并没有被超越进展循环的结束。没有数据被传回服务器端。
例如,如果我每一个循环的进行时间把window.alert(insertArray)
里面的for循环我得到预期的结果(即一个警告框,直到最后的盒子具有完整阵列。
但是,如果我把相同window.alert for循环的结束后,我什么也没得到任何警告框,在所有
它抛出任何控制台错误?你确定“长度”是你期望的值吗? – samanime
我开始说这个长度正是我所期待的,因为它的长度是93,而且当前有93个项目......然后我意识到对于93个项目,我实际上需要92个长度值。将var length = parseInt(arrayLength)更改为var length = parseInt(arrayLength)-1并完美工作。 非常感谢您的帮助。我确定这很简单! –
在你的变量定义下,在最后加上'try {'catch(e){console.log('有错误:'+ e.message)}'变量'insertArray'可能不是有效的JSON。但是,了解发生的事情的唯一方法就是进行一些调试。对于Chrome和Firefox,点击f12键打开浏览器控制台。 –