一个VBScript代码无法转成JScript代码!

有一网页:
<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>

purchase.asp如下:

<B>VBScript代码</B>
<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>

我把它改成JScript代码:

<B>JScript代码</B>
switch (Request.QueryString("ITEM"))
{
case "1":
Response.Write("谢谢您订购了用户手册。");
break;

case "2":
Response.Write("谢谢您订购了打字机。");
break;

case "3":
Response.Write("谢谢您订购了马蹄铁。");
break;

default:
Response.Write("sorry");
break;
}
%>

执行总是写"sorry";而我把代码改成这样就行了:

switch (parseInt(Request.QueryString("ITEM"), 10))
{
case 1:
Response.Write("谢谢您订购了用户手册。");
break;

case 2:
Response.Write("谢谢您订购了打字机。");
break;

case 3:
Response.Write("谢谢您订购了马蹄铁。");
break;

default:
Response.Write("sorry");
break;
}
不知是何原因?请高手解释一下!
[1651 byte] By [thy_funny-西瓜贩子] at [2008-5-20]
# 1
try

switch (""+Request.QueryString("ITEM"))
saucer-思归 at 2007-10-29 > top of Msdn China Tech,Web,ASP...
# 2
Response.QueryString是一个集合的集合。。返回的是一个对象~~~
因为VBS中对象和非对象是明确分开的。
所以当
SELECT CASE 时,总会先尝试读取对象的默认值。
Lostinet-Hello at 2007-10-29 > top of Msdn China Tech,Web,ASP...
# 3
类型的要求不一样
steelabeer-民工 at 2007-10-29 > top of Msdn China Tech,Web,ASP...
# 4
谢谢各位了,
to saucer(思归):
你的方法可以用。

我用switch (Request.QueryString("ITEM").Item())通过了。
thy_funny-西瓜贩子 at 2007-10-29 > top of Msdn China Tech,Web,ASP...