Asp classic 通过表单循环获取字段名和字段值问题(经典ASP)
在提交表单时,我希望捕获表单的字段名和值,并希望在不显示在浏览器中的情况下传递它们(Response.Write使它们在浏览器中可见)。请问我怎么做?我正在使用以下代码:Asp classic 通过表单循环获取字段名和字段值问题(经典ASP),asp-classic,vbscript,Asp Classic,Vbscript,在提交表单时,我希望捕获表单的字段名和值,并希望在不显示在浏览器中的情况下传递它们(Response.Write使它们在浏览器中可见)。请问我怎么做?我正在使用以下代码: For Each Item In Request.Form fieldName = Item fieldValue = Request.Form(Item) Response.Write(""& fieldName &" = Request.Form("""& fiel
For Each Item In Request.Form
fieldName = Item
fieldValue = Request.Form(Item)
Response.Write(""& fieldName &" = Request.Form("""& fieldName &""")")
Next
您的代码基本上是正确的,因此只需删除
响应。编写,并对正在填充的字段名和字段值变量执行其他操作。处理完数据(将其插入数据库或发送电子邮件)后,可以将用户重定向到成功/感谢页面
要测试您是否收到正确的输入,您可以更改响应。将写入
Response.Write fieldName & " = " & fieldValue & "<br>"
Response.Write fieldName&“=”&fieldValue&“
”
更新
以下是如何使用Dictionary对象将字段名和字段值放在一起:
Dim Item, fieldName, fieldValue
Dim a, b, c, d
Set d = Server.CreateObject("Scripting.Dictionary")
For Each Item In Request.Form
fieldName = Item
fieldValue = Request.Form(Item)
d.Add fieldName, fieldValue
Next
' Rest of the code is for going through the Dictionary
a = d.Keys ' Field names '
b = d.Items ' Field values '
For c = 0 To d.Count - 1
Response.Write a(c) & " = " & b(c)
Response.Write "<br>"
Next
Dim项、字段名、字段值
尺寸a、b、c、d
Set d=Server.CreateObject(“Scripting.Dictionary”)
对于Request.Form中的每个项目
fieldName=项目
fieldValue=请求。表单(项目)
d、 添加字段名、字段值
下一个
“剩下的代码是用来查字典的
a=d.键“字段名”
b=d.项目“字段值”
对于c=0到d,计数为-1
回答。写a(c)&“=”和b(c)
响应。写入“
”
下一个
这是一个非常小的片段,我用来显示所有发布的表单字段
<%
For x = 1 to Request.Form.Count
Response.Write x & ": " _
& Request.Form.Key(x) & "=" & Request.Form.Item(x) & "<BR>"
Next
%>
您好,谢谢您的帮助。基本上我有一个表单,它提交给一个脚本。这个脚本在脚本示例中硬编码了表单FieldNames requests:PID=(Request.form(“PID”)。现在我在这个脚本中创建了一个循环来动态工作并从表单中获取字段名,我希望它们被写成[fieldName]=Request.form(“[fieldName]”)在脚本中。我该怎么做呢?我明白了;如果我理解正确,您希望基于字段名和为其提交的值创建变量。这是不可能的,您最好使用这些名称/值对创建一个数组或字典对象。请问哪一个是容易的,我该如何将其应用于数组?再次感谢此数组对于“for Each Loop”问题也是一个很好且非常简单的解决方案-如果您需要保留请求提交名称/值的顺序。谢谢您,我曾经遇到过此问题,并且不得不使用更长更复杂的解决方案!