我有一个非常简单的下拉菜单:
<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吗?我更喜欢一种简单的方法,因为我相信这项任务应该是,但此时我愿意接受我能得到的任何东西。
答案 0 :(得分: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 Host: example.com Content-Type: application/x-www-form-urlencoded Content-Length: 20 submit=Submit%20Form
然后,您可以在该页面的任何位置插入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
。
答案 1 :(得分:0)
尝试使用双引号包装值属性值。
<option value="1">1</option>
除此之外,请检查您的变量名称。