前面我们已经了解如何取得使用者上传的参数值,但那是在已经知道参数名称的状况之下才可以;而使用querystring 属性我们可以只利用索引来取得参数值,querystring 属性的型别是namevaluecollection。下面的程序中我们先定义一个namevaluecollection 型态变量来接收querystring 的内容,然后使用一组巢状循环来取得参数名称及内容:
<html>
<script language="vb" runat="server">
sub page_load(sender as object,e as eventargs)
dim shtloop1, shtloop2 as short
dim ara(), arb() as string
dim cola as namevaluecollection
cola=request.querystring
ara = cola.allkeys ' 取得全部的键值并存到一个数组中
for shtloop1 = 0 to ubound(ara)
response.write("参数名:" & ara(shtloop1))
arb = cola.getvalues(shtloop1) ' 利用外循环的索引来取得参数内容并
存到一个数组中
for shtloop2 = 0 to ubound(arb)
response.write(" 内容:" & arb(shtloop2) & "<br>")
next shtloop2
next shtloop1
end sub
</script>
</html>
由于allkeys 方法和getvalues 方法的传回值都是数组,所以必须宣告两个数组来接收。我们在网址列输入「http://127.0.0.1/cr/ch09/ex05.aspx?r=1&s=2」后的执行结果,如下图所示:
