0

我有一个非常简单的下拉菜单:

<select name="sNumR" id="sNumR" onChange="addTable()">
    <option value=1>1</option>
    <%For i=2 to 10
        Response.write("<option value="&i&">"&i&"</option>")
    Next%>
</select>

我要做的就是访问选定的值,无论它是默认值 1 还是其他值。请不要列出 jQuery 或 javascript 解决方案,因为我已经知道如何做到这一点并且根本不关心这一点。

很简单:Request.Form("sNumR")行不通。我试过了,很多次...

我错过了什么?这甚至可以使用 vbscript/asp 吗?我更喜欢一种简单的方法,因为我相信这个任务应该是,但在这一点上,我愿意接受我能得到的任何东西。

4

2 回答 2

2

Request.Form()只有在提交数据后才能访问集合,您可以使用客户端代码触发表单提交或使用<input type="submit" />

<select>这整个机制依赖于您的和<input>标签被包装在标签内的事实<form>。该表单具有您必须设置的特定属性才能访问该Request.Form()集合。

  • action - 指定您提交表单的 URL,空字符串将提交到当前页面。

  • 方法 - GET(填充Request.QueryString()集合)或POST(填充Request.Form()集合。

一个简单的 HTML 表单示例应该是这样的;

<html>
  <head>
    <title>Sample Form</title>
  </head>

  <body>
    <form action="" method="post">
      <input type="submit" name="submit" value="Submit Form" />
    </form>
  </body>
</html>

POST这将对当前页面做一个表单(假设它被称为example.asp

POST /example.asp HTTP/1.1
主机:example.com
内容类型:application/x-www-form-urlencoded
内容长度:20

提交=提交%20表格

然后,您可以在该页面的任何位置插入 ASP 以访问该Request.Form()集合,例如,将此代码放在 example.asp 中的 HTML 上方

<%
Dim is_submit
'Have we submitted the form?
is_submit = (Request.Form("submit") = "Submit Form")

Response.Write "Form submitted: " & is_submit
%>

Form submitted: False在提交前和提交Form submitted: True后生成。

于 2014-10-01T11:09:13.947 回答
0

尝试用双引号将您的 value 属性值括起来。

<option value="1">1</option>

除此之外,请检查您的变量名称。

于 2014-10-01T06:27:25.540 回答