gpt4 book ai didi

javascript - 在经典 ASP 中将 VBScript 数组转换为 Javascript 数组

转载 作者:行者123 更新时间:2023-12-01 03:22:40 27 4
gpt4 key购买 nike

我有一个用VB脚本编写的经典ASP页面,并且有一个使用Java脚本的脚本标签,如下所示。

我尝试使用 for 循环将 VB Script Array(codeList) 转换为 Java Script Array(availableCode),但 VB Script Array 的第一行一直在 Java Script Array 的每一行中转换。

$(document).ready( function(){
var availableCode = new Array();

for (idx=0; idx < 3; idx++)
{
availableCode[idx]=<%=codeList(idx)%>;
alert (idx);
alert (<%=codeList(idx)%>);
alert (availableCode[idx]);
}
});

我也尝试了以下方法,但出现语法错误。

availableCode[idx]=<%=codeList(%> idx <%)%>;

有人可以建议如何转换期望值吗?谢谢。

最佳答案

我认为您需要以相反的方式进行操作,即在 VBScript 中创建索引 (idx),然后将其写入 Javascript:

$(document).ready( function(){
var availableCode = new Array();
<%
dim idx
for idx = 0 to UBound(codeList)
%>
availableCode[<%=idx %>] = <%= codeList(idx) %>;
alert (<%= idx %>);
alert (<%= codeList(idx) %>);
alert (availableCode[<%= idx %>]);
<% next %>
});

如果 codeList 的元素是字符串值,则需要加引号以防止 JavaScript 错误

$(document).ready( function(){
var availableCode = new Array();
<%
dim idx
for idx = 0 to UBound(codeList)
%>
availableCode[<%=idx %>] = '<%= codeList(idx) %>'; // quote here
alert (<%=idx %>);
alert ('<%= codeList(idx) %>'); // quote here
alert (availableCode[<%= idx %>]);
<% next %>
});

我认为您遇到的问题是 idx 在服务器端(VBScript)上不存在,因此在此语句中使用时 <%= codeList(idx) %> , idx 被隐式转换为 0。因此始终返回 codeList(0) 中的值。 .

关于javascript - 在经典 ASP 中将 VBScript 数组转换为 Javascript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45066622/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com