javascript - ASP 数组到 JavaScript 数组

标签 javascript arrays asp-classic

这是我的问题:

我有一个一维数组,它是同一 .asp 中某些服务器端代码的结果。我想获取这个数组并将其中的字符串传输到 JavaScript 数组,这样我就可以使用表中的值进行显示。

这是我尝试过的代码:

<script language="javascript">
var jsArray = [];
var n = <%=r%>;

for (n = 0; n < 4; n++){
    jsArray[n] = '<%=tulemused(n)%>'; //this isn't working for some reason
}

</script>

我个人认为错误是由n变量造成的。当我将其写在段落中时它显示正确,但在上面标记的行中使用时它不起作用。我还认为 for 循环可能是问题所在。

我做错了什么?

最佳答案

您的“<%=”之类的代码将在页面呈现时执行。这意味着,按照编写方式,该代码将在页面呈现时执行一次,尝试访问数组的第 n 个元素。但是,此时变量 n 不在访问范围内。

因此,如果您希望使用此类代码,则还需要将迭代包含在嵌入代码中。

一个更简单的解决方法是将字符串列表(您希望传递的)存储为单个串联字符串,由已知分隔符分隔,并在 Javascript 中访问串联字符串并在 JS 中拆分它。

也就是说,如果字符串变量 tulemused_concatenated 保存由分隔符“,”分隔的连接字符串,则以下脚本应该可以工作。

<script language="javascript">
var jsArray = [];
var n = <%=r%>;

var concatenated_string = '<%=tulemused_concatenated%>'; //this isn't working for some reason
var jsArray[n] = concatenated_string.split(',');

</script>

关于javascript - ASP 数组到 JavaScript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33842210/

相关文章:

PHP - 我可以从特定键移动数组吗?

asp-classic - IIS Express 是否支持调试经典 ASP?

sql-server - 替代祖先或自身(或选择树中具有特定子节点的所有节点)

javascript - 跟踪页面上每个链接的点击次数

javascript - 下拉更改事件通过 api 调用与状态、无序列表和按钮可见性绑定(bind)

javascript - 使用jquery从post数据中检索元素

javascript - 插入 Ajax 轮询

javascript - json数据显示在表格中

c++ - "Debug Assertion"数组、头文件和声明

javascript - 在经典 ASP 中渲染链接,然后使用 jquery 更改它