Javascript 查找JS-ASP中是否存在URL参数

Javascript 查找JS-ASP中是否存在URL参数,javascript,asp-classic,jscript,Javascript,Asp Classic,Jscript,我正在编辑其他人的代码,这些代码是用ASP的服务器端JS编写的,我遇到了一个可能有一个非常简单的解决方案的问题 我正在从URL参数输出一些代码,如下所示: <%=Request.QueryString("param")%> 问题是,如果param不存在,我需要做其他事情。所以我试着: <% var param = Request.QueryString("param"); if (!param) { param = "Some Default Value"; } %

我正在编辑其他人的代码,这些代码是用ASP的服务器端JS编写的,我遇到了一个可能有一个非常简单的解决方案的问题

我正在从URL参数输出一些代码,如下所示:

<%=Request.QueryString("param")%>
问题是,如果param不存在,我需要做其他事情。所以我试着:

<% 
  var param = Request.QueryString("param");
  if (!param) { param = "Some Default Value"; }
%>
<%=param%>
问题是,即使缺少URL参数,if的计算结果似乎也不会为真。我猜这是我的错!图像条件在这里不起作用。我的测试条件应该是什么

请放弃关于转义URL参数以防止XSS的严厉警告。

在JSP中,您必须使用getParameter而不是QueryString

JSP中的代码是

<% 
  String param = request.getParameter("param");
  if (param.length() == 0) { param = "Some Default Value"; }
%>
在JSP中,必须使用getParameter而不是QueryString

JSP中的代码是

<% 
  String param = request.getParameter("param");
  if (param.length() == 0) { param = "Some Default Value"; }
%>
我就是这么做的

function qs(name) {
    var v = Request.QueryString(name),
        v2 = "x" + v + "x";
    if ((v2=="xundefinedx") && (v != "undefined")) {
        return null;
    }
    return v + ''; // force string
}
我就是这么做的

function qs(name) {
    var v = Request.QueryString(name),
        v2 = "x" + v + "x";
    if ((v2=="xundefinedx") && (v != "undefined")) {
        return null;
    }
    return v + ''; // force string
}

检查查询字符串参数是否存在的正确方法是使用Count属性:

<% 
  var param = Request.QueryString("param");
  if (param.Count === 0) { param = "Some Default Value"; }
%>
<%=param%>
根据有关文件

Request.QueryStringparameter的值是所有 查询字符串中出现的参数值


这可能就是为什么简单的if!参数检查不起作用。

检查查询字符串参数是否存在的正确方法是使用Count属性:

<% 
  var param = Request.QueryString("param");
  if (param.Count === 0) { param = "Some Default Value"; }
%>
<%=param%>
根据有关文件

Request.QueryStringparameter的值是所有 查询字符串中出现的参数值


这可能就是为什么简单的if!参数检查不起作用。

我没有使用JSP。这是一个ASP站点,页面是用Javascript而不是VBScript编写的。我没有使用JSP。这适用于使用Javascript而不是VBScript编写页面的ASP站点。如果您希望检测参数是否存在,但如果参数为空,则此功能非常有效。例如,URLhttp://example.com?foo= 将返回计数1,而不是0。如果您需要测试空值,Cheeso下面的答案会更好。如果您想检测参数是否存在,而不是参数是否为空,那么这很好。例如,URLhttp://example.com?foo= 将返回计数1,而不是0。如果你需要测试一个空值,Cheeso下面的答案会更好。使用Cheran的答案的一个稍微简单的形式是:if param.count==0 | | param+==param='some default value';使用Cheran的答案的一个稍微简单的形式是:如果param.count==0 | | param+==param='somedefaultvalue';