[英]IsNumeric() not working with Request.QueryString
我在尝试让IsNumeric与Request.QueryString一起正常工作时遇到了问题。
服务器是Windows 2008 R2 / IIS7.5
我的代码不能再简单了:
<%@ LANGUAGE=VBScript %>
<% Response.Write "IsNumeric: " & IsNumeric(Request.QueryString("")) %>
我的网址: http : //localhost.com/default2.asp?44hjh
输出:IsNumeric:True
如果我将我的代码更改为此,那么我会得到所需的结果:
<%@ LANGUAGE=VBScript %>
<% Response.Write "IsNumeric: " & IsNumeric(Request.QueryString("test")) %>
我的网址: http : //localhost.com/default2.asp?test = 44hjh
输出:IsNumeric:False
当我没有指定特定的查询字符串元素时,为什么IsNumeric不起作用? 更重要的是,我该如何解决?
Request.QueryString("")
不存在,因此返回NULL
- 没有一个空白的参数。 NULL
值的IsNumeric
将返回True。
您可以像在第二个示例中那样提供参数,而不是使用Request.QueryString("")
,或者只使用Request.QueryString
,假设没有其他参数传递到您的页面:
<% Response.Write "IsNumeric: " & IsNumeric(Request.QueryString) %>
那是因为null值的isnumeric
返回一个整数类型。 这就是为什么你在第一种情况下获得TRUE的原因。 而您在第二种情况下使用isnumeric
检查字符串类型。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.