Asp classic 使用JavaScript类ASP-处理Request.QueryString中缺少查询参数时的条件

Asp classic 使用JavaScript类ASP-处理Request.QueryString中缺少查询参数时的条件,asp-classic,jscript,Asp Classic,Jscript,可能重复: 这可能是非常基本的,但是 在下面的代码中,if分支将覆盖命中请求未命中“name”查询参数的异常情况,如 你好,ASP! 但if分支从未进入。else分支每次都会发生,每次我都会得到“Hello undefined!” 我试图用“或null替换未定义的,但没有任何变化 我到处搜索过,但都在谈论ASP.NET/C和客户端JavaScript。 谢谢你的帮助 更新: 嗨,伙计们,谢谢你们的关心! 但我的意思是ASP利用JavaScript进行服务器端编程。我已经更新了上面的代码。也

可能重复:

这可能是非常基本的,但是

在下面的代码中,if分支将覆盖命中请求未命中“name”查询参数的异常情况,如


你好,ASP!
但if分支从未进入。else分支每次都会发生,每次我都会得到“Hello undefined!

我试图用null替换未定义的,但没有任何变化

我到处搜索过,但都在谈论ASP.NET/C和客户端JavaScript。 谢谢你的帮助

更新:
嗨,伙计们,谢谢你们的关心!
但我的意思是ASP利用JavaScript进行服务器端编程。我已经更新了上面的代码。

也许这对你有用:

<script type="text/javascript">
// access the server-side response 
// and store it in a javascript variable
var myQueryString = '<%= Request.QueryString("name") %>';

// now write to the document using javascript only
if (myQueryString === "" ) {
   document.write("oops, give me your name!");
} else {
   document.write("Hello " + myQueryString + "!");
}
</script>

//访问服务器端响应
//并将其存储在javascript变量中
var myQueryString='';
//现在只使用javascript编写文档
如果(myQueryString==“”){
文档。写下(“哦,给我你的名字!”);
}否则{
写下“你好”+myQueryString+“!”;
}

检查参数是否传递的最可靠方法是检查
计数
属性:

if (Request.QueryString("name").Count === 0) {
    // do whatever...
}
这是因为
Request.QueryString(var)
实际上返回一个类似数组的对象,该对象包含多个值,如果在URL中多次指定同一参数(例如,)。您可以在MSDN文档中阅读更多内容:


这不是经典的asp。在经典的asp中,如果request.querystring(“name”)为“”,则为
,然后。。。其他的结束如果
你好,谢谢你的关心。我猜你在用VBScript,对吗?我是ASP新手,不知道VBScript,但我学了一点JS,所以我想使用JS。有一种解决方案像“if”(“+Request.QueryString”(“name”)==“undefined”)”,但我觉得这很棘手。我很久没有做过ASP经典了,但我记得您选择了JScript的VBScript作为服务器端语言。不过,很少有人使用JScript方法。@MatthewNichols-很好。您好@mg1075,我的代码完全是服务器端的JavaScript代码。我了解到ASP可以利用JavaScript进行服务器端编程,对吗?上面的JS代码将在客户端运行,除了在?
if (Request.QueryString("name").Count === 0) {
    // do whatever...
}