如何将经典的asp会话变量数组传递给客户端JavaScript?

时间:2011-03-05 00:38:18

标签: javascript asp-classic

我有一个Session变量,它是一个整数数组,例如:

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

我想要做的是在会话var<%= Session(“myArray”)%>中传递它到我的客户端javascript。如果我使用session var并将其转换为如下字符串,我可以这样做:

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

我只是想知道是否有一种更直接的传递数组的方法可能会在传递之前将其转换为字符串,因此我可以将其作为数组传递?

由于

3 个答案:

答案 0 :(得分:1)

你可以将整数解析为已经是数组的东西,所以你的bob数组会像那样:

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

当页面提供给客户端时,它应如下所示:

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

函数GetIntegersString是您需要实现的东西

答案 1 :(得分: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中将任何值表达为文字。

答案 2 :(得分:0)

这应该可以正常工作:

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