<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript">
testArray =[[ 'text1', 'text2', 'text3' ],
[ 'question',
'correct answer',
'second answer',
'third answer',
'fourth answer' ],
[ 'question',
'correct answer',
'second answer',
'third answer',
'fourth answer',
'fifth answer',
'sixth answer' ]];
</script>
</head>
<body>
<div id = "passage"></div>
<div id = "question"></div>
<div id = "answers"></div>
<script>
$.each(testArray[1].slice(1), function (i) {
$("#answers").append("<p>" + testArray[1][i] + "</p>");
});
</script>
</body>
</html>
當我跑了這一點,我是通過元素期待最後的每個循環來從testArray[1][1]
到testArray[1][4]
。不過由於某種原因,它只能達到testArray[1][3]
。有誰知道問題是什麼?Jquery的每個循環沒有得到最後一個元素
編輯:
我做到這一點,它以某種方式工作了什麼,我想做的事(開始於指數1元,並循環到最後):
$.each(testArray[1].slice(1), function (i) {
$("#answers").append("<p>" + testArray[1][i + 1] + "</p>");
});
不知道如何/爲什麼這工作雖然。
'slice'刪除最後一個元素。你不需要使用切片。只要刪除它,它會起作用。 –
我想使用切片,以刪除第一個元素(索引0),並從第二個元素(索引1)開始循環。 –
刪除第一個元素,您需要使用'shift()'或'splice(0,1)' –