接受一个Query字段

在URL地址后面用问好带着Query字段来传递参数也是很常用的，如果你曾经使用过诸如Alta Vista这样的网络搜索引擎，你就会对这种方式十分熟悉。

你可以在指定联接中利用?带Query字段来传递参数信息，例如下例：

<HTML>

<HEAD><TITLE>Query

字段示例</TITLE></HEAD>

<BODY>

<A HREF=

“http://www.aspsite.com/newpage.asp?Click=YES”>点击这里!</A>

</BODY>

</HTML>

在这个例子中，联接地址是newpage.asp。不过，这个连接包括一个Query字段，

“Click=Yes”传递到了newpage.asp中去。

你也可以在浏览器的地址拦中直接敲入主页后面带上Query字段的方法来进行信息传递，对于服务端来说，二者是没有区别的。例如下面：

http://www.aspsite.com/newpage.asp?Click=Yes

进行菜单类选择时Query字段是非常有用的。如果你在一个主页中指向不同内容而又希望在一个主页中处理，那么你就可以利用它。例如下面这个例子：

<HTML>

<HEAD><TITLE>

产品列表</TITLE></HEAD>

<BODY>

<H3>

欢迎进入迈至科网上商店</H3>

请选择你要订购的名录：

<p><a href=

“purchase.asp?ITEM=1”>用户手册</a>

<p><a href=

“purchase.asp?ITEM=2”>打字机</a>

<p><a href=

“purchase.asp?ITEM=3”>马蹄铁</a>

</body>

</html>

虽然用户可以进行多种选择，而且每种选择都连接不同内容，但是实际上指向一个

Active Server Page，只是Query字段不同。

图15.3 订购列表页

用户可以自由选择点击连接，那么根据Query字段来判断显示不同内容。

你可以用Active Server Pages的Request对象的QueryString集合来接受这些信息，和Form集合的调用方法一样。要想接受一个特定的Query字段内容，你只需要写出Query字段的名称就行了。这有一个例子（对应于上面的产品列表主页）：

<HTML>

<HEAD><TITLE>

订购</TITLE></HEAD>

<BODY>

<%

SELECT CASE Request.QueryString(

“item”)

CASE

“1”

Response.Write(

“谢谢您订购了用户手册。”)

CASE

“2”

Response.Write(

“谢谢您订购了打字机。”)

CASE

“3”

Response.Write(

“谢谢您订购了马蹄铁。”)

END SELECT

%>

</BODY>

</HTML>

在这里QueryString集合被用来检查是哪一个连接被点击。利用SELECT CASE语句来根据Query字段作出合适的响应，例如，用户选择了“用户手册”，那么用户收到的显示信息是“谢谢您订购了用户手册”。