2011-03-05 61 views
1

我有一個會話變量這是一個整數數組,例如:如何將傳統的asp會話變量數組傳遞給客戶端JavaScript?

myArray的{1,4,3,5,6,7,9,2,... N}

我我試圖做的是通過這個會話var <%= Session(「myArray」)%>我的客戶端javascript。我能做到這一點,如果我走了會議變種,並將其轉換成一個像這樣的字符串:

var b = '<%=Session("myArray")%>'; 
    var bob = new Array(); 
    bob = b.split(','); 

我只是想知道是否有傳遞數組可能切割出需要將其轉換爲更直接的方式一個字符串傳遞之前,所以我可以傳遞它作爲一個數組?

感謝

+0

我認爲存儲在會話中的東西是序列化的,所以它會作爲字符串返回。你可以簡化你的JavaScript代碼'var bob ='<%= Session(「myArray」)%>'。split(「,」);' – Prescott 2011-03-05 00:52:10

+0

我喜歡這個主意但它沒有工作:( – flavour404 2011-03-05 01:42:32

+1

@Pre classic ASP session存儲完整的對象,只有Request和Cookies值存儲爲純字符串 – 2011-03-06 08:28:48

回答

0

這應該只是罰款:

​​
+0

這個工作很好,當傳遞一個數組保存我將數組轉換爲字符串時,謝謝 – flavour404 2011-03-16 17:33:20

+0

Cheers @flav很高興能幫到你。 :) – 2011-03-17 10:04:01

0

JSON是表達一個字面值的JavaScript的方式,這樣你就可以在你的數組轉換成JSON,然後直接分配給它:

var bob = '<%=array_to_json(Session("myArray"))%>'; 

http://www.json.org推薦了一些ASP工具將數據轉換爲json:

http://tforster.wik.is/ASP_Classic_Practices_For_The_21st_Century/JSON4ASP 
http://code.google.com/p/aspjson/ 
http://www.webdevbros.net/2007/04/26/generate-json-from-asp-datatypes/ 

瞭解更多關於JSON的知識,以便知道如何在JS中表示任何值作爲文字。

1

你可以解析整數到的東西,已經是一個數組,所以你是乙陣列竟被是這樣的:

var bob = [<%=GetIntegersString(Session("myArray"))%>]; 

網頁時提供給客戶端就應該是這樣的:

var bob = [1,4,3,5,6,7,9]; 

功能GetIntegersString是你將需要實現

相關問題