在传统的ASP FOR EACH循环中动态分配值

时间:2012-04-04 09:41:46

标签: arrays loops asp-classic foreach

我正在尝试为FOR EACH循环中的一系列变量赋值,但不断出现“类型不匹配”错误。

personOrder = "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15" 'order items displayed onscreen

personArray = split(personOrder, ",")

For each i in personArray
    imageArray(i) = objContentXML.selectSingleNode("/page/profile" & i & "/image").text
Next

注意:我已将var personOrder设为列表,因为将来的项目可能会改变顺序。

我认为在FOR EACH循环中分配数组值存在问题。令人讨厌的是,它在FOR循环中运行良好,但我正在尝试将来证明我的代码。

如果这个问题太愚蠢,请道歉。经过9个月的尿布后,我正在回归代码世界(更少的尿布,更多的打嗝)。

1 个答案:

答案 0 :(得分:4)

您在哪个声明中收到此错误?我可以执行以下代码而不会出现任何错误消息:

personOrder = "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15" 'order items displayed onscreen

personArray = split(personOrder, ",")

dim imageArray
redim imageArray(uBound(personArray) + 1)

For each i in personArray
    imageArray(i) = i
Next

您必须先创建一个数组并声明要放入其中的项目数(使用redim更改尺寸)。

为了测试目的,我用一个简单的语句替换了你的objectContentXML。