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

问题描述 投票:0回答:3

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

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

我想做的是将其在会话变量

<%=Session("myArray")%>
中传递给我的客户端JavaScript。 如果我获取会话变量并将其转换为如下字符串,我就可以做到这一点:

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

我只是想知道是否有一种更直接的方法来传递数组,可能不需要在传递之前将其转换为字符串,这样我就可以将它作为数组传递?

谢谢

javascript asp-classic
3个回答
1
投票

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

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

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

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

函数

GetIntegersString
是您需要实现的东西


0
投票

这应该可以正常工作:

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

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 中将任何值表示为文字。

© www.soinside.com 2019 - 2024. All rights reserved.