我有一个表格会将一组数据发送到ASP页面 假设这个数组叫做“矩阵”。
通常,在接收表单的ASP上,我会将其写出来从数组“matrix”中检索表单输入。
Request.Form("matrix[]")(i) where i = 1, 2, 3 which are the elements in the array.
假设我想做一个像这样的变量
a="matrix"
我希望使用此变量a
并将其放入请求表单中,而不是编写"matrix"
,以便它看起来像这样
Request.Form(a[])(i)
怎么做?目前,我的所有尝试都显示为空白。例如当我尝试让它们出现在带有response.write的页面上时,什么都没有显示出来。
请帮助我或让我知道如果无法完成,我已经花了好几个小时。
答案 0 :(得分:2)
Request.Form("matrix[]")
的字符串值为"matrix[]"
而不是名为"matrix"
的字符串数组。
所以你需要做任何一次
a = "matrix[]"
Request.Form(a)(i)
或
a = "matrix"
Request.Form(a & "[]")(i)
答案 1 :(得分:2)
与需要添加方括号的PHP不同,在经典ASP中,您只需要为要组合成数组的元素指定相同的名称。
HTML应为:
<input type="text" name="matrix" />
<input type="text" name="matrix" />
<input type="text" name="matrix" />
然后你可以像这样迭代提交的值:
For x=1 To Request.Form("matrix").Count
Response.Write("Value of matrix #" & CStr(x) & "is: " & Request.Form("matrix").Item(x))
Next
请注意,即使用户将其留空,也会包含所有元素。