我有一個Java servlet,它成功地將一堆會話變量,說:使用Javascript - 傳遞變量以session.getAttribute
SessionVar1 SessionVar2 SessionVar3現在
,在Java腳本,我可以讀
var name = '<%= session.getAttribute("SessionVar1") %>';
var name = '<%= session.getAttribute("SessionVar2") %>';
var name = '<%= session.getAttribute("SessionVar3") %>';
然後我打電話文件撰寫打印1,名稱和名稱3:使用類似於下面的代碼打印會話變量。
再一次,這工作沒有問題。但是,我沒有3個會話變量,而是100個。 我不想寫100個對session.getAttribute的調用,所以我想使用「FOR」循環 並將循環計數器追加到會話變量的名稱中檢索。一些沿線:
int i=100;
for (i=1; i<=100; i++)
{
var VariableName = "SessionVar" + i;
var name = '<%= session.getAttribute(VariableName) %>';
document.write(name);
}
我嘗試了很多組合,我無法傳遞參數到session.getAttribute。我明白Javascript參數不存在於服務器的上下文中,但我想知道是否有任何方法可以避免必須調用session.getAttribute 100次。
預先感謝您。
問候,
蓋伊
+1:我在2001年看到了像這樣的生產代碼......不知道人們仍然這樣認爲 – 2012-04-20 02:51:02