我有以下代碼:使用JavaScript變量作爲數組索引
var n = 1;
var term = "${abc[n].term}";
console.log("term = " + term);
這一術語似乎是空的,但如果我通過 var term = "${abc[1].term}";
更換 3210 它的工作原理。
它看起來像jsp正在尋找甲板對象的n
屬性,我怎麼能修復它,以便n
被替換爲它的值,當我使用數組索引?
編輯: 看來,這不是一個好主意,試圖混合JSTL和Javascript,而如果你想使用JavaScript變量作爲數組索引,您必須將對象複製到Array對象,這樣:
var deck = new Array();
<c:forEach var="v" items="${abc}">
deck.push("${v.term}");
</c:forEach>
var n = 1;
console.log("term = " + deck[n]);
您可以將JavaScript與JSP/JSTL/EL完美混合。您應該只瞭解** JSP/JSTL/EL在web服務器上運行並生成HTML代碼,並且JavaScript是生成的HTML代碼的一部分,該代碼反過來在webbrowser中運行。在瀏覽器中右鍵單擊頁面,然後執行*查看源代碼*。你現在看到了嗎?您應該編寫JSP/JSTL/EL代碼,使其能夠生成所需的HTML/JS代碼。 – BalusC