Javascript array undefined in for loop
I have a problem with a javascript array: "arrFinal[i] is undefined"
In my script arrFinal is dynamically generated
function fillTextareas () {
var arrFinal = [];
arrFinal[0] = [];
....
....
// Then some code that define the content of arrFinal, the length of arrFinal ( tailleArrFinal, tailleArrSubFinal)
....
....
for(i=0;i<=tailleArrFinal;i++){
for(j=0;j<tailleArrSubFinal;j++) {
$("form开发者_JS百科 textarea#t" + i + "_" + j).val(arrFinal[i][j]);
}
}
}
When the function is called, a dump show me that the array arrFinal is correctly fill and the script works but i have an alert "arrFinal[i] is undefined". How can i do that without alert ? Thanks !!
It looks like an off-by-one error in the outer loop.
It should be i < tailleArrFinal
, not <=
.
By looking at your loop I can see at least 2 errors: you miss "var" and ".length" (you have to test for array length!)
try to replace:
for(i=0;i<=tailleArrFinal;i++){
for(j=0;j<tailleArrSubFinal;j++) {
$("form textarea#t" + i + "_" + j).val(arrFinal[i][j]);
}
}
}
with:
for(var i=0;i<tailleArrFinal.length;i++){
for(var j=0; j<tailleArrSubFinal.length; j++) {
$("form textarea#t" + i + "_" + j).val(arrFinal[i][j]);
}
}
}
精彩评论