【发布时间】:2016-02-15 22:01:08
【问题描述】:
我试图将一些复选框值作为数组发送,然后将其插入到我的数据库中,但我无法将数组值放入我的 asp 页面中的变量中? 我想将数组值放入变量 kalnr0=arrayvalue0、kalnr1=arrayvalue1 等...
我现在有了这个:它显示了说它是一个数组的警报(文本)。
我正在使用 ajax method="GET" 发送表单 和表单域:
<input type="checkbox" name="kalendrar_id[]" value="<%=rs("kalendrar_id")%>">
在我的接收 asp 页面上我有这个:
Dim kalendrar_id
kalendrar_id=request.querystring("kalendrar_id[]")
kalitem = Split(kalendrar_id, ",")
japp=array(kalitem)
If IsArray(japp) then
For i = 0 To UBound(kalitem)
On Error resume next
Response.Write kalnr(i)=i
Next
texten= " is an array"
Else
texten= " not an array"
End If
那么如何将数组值放入以下变量中?
kalnr0=Cstr(kalitem(0))
kalnr1=Cstr(kalitem(1))
kalnr2=Cstr(kalitem(2))
kalnr3=Cstr(kalitem(3))
kalnr4=Cstr(kalitem(4))
我真的需要一些帮助,谢谢:-)
如果我设置 kalendrar_id="1,2,3,4,5" 那么它可以工作,所以 kalendrar_id=request.querystring("kalendrar_id[]") 没有得到任何值,或者它的值错误!?
如果我以正常方式发布表单,而不是使用 ajax,那么它就可以工作,所以查询字符串 request.querystring("kalendrar_id[]") 是错误的,可能是编码的问题吗?
已解决。我不得不从表单字段中删除 [ ],不知道还有什么,尝试了很多东西;-)
【问题讨论】:
-
你不需要
array();Split已经生成了一个数组。另外,我不能完全说出您遇到的问题:您是没有从表单中获取值,还是数组到编号的变量转换让您感到困惑? (请注意,后一个问题的“解决方案”是“不要那样做”。) -
玛莎,嗨。我无法将数组值放入我的变量中。我不知道我做错了什么?我知道 texten="is an array" 显示在我的 ajax 回调中,但我无法确定该数组是否真的有任何或正确的值!我只需要将数组值放入我的数据库中,我不能只将 kalitem(0) 设置为插入到我的数据库中的值!?所以我想我必须先把数组值变成变量,还是应该这样做?
-
我不明白为什么你认为你不能直接使用
kalitem(i)。至于弄清楚您的表单返回的内容,这就是Response.Write Request.Querystring("kalendrar_id[]")的用途。
标签: arrays asp-classic