Javascript 如何通过'&';查询字符串中的值

Javascript 如何通过'&';查询字符串中的值,javascript,asp.net,Javascript,Asp.net,我正在从Javascript创建queryString,如下所示 serialize = function(obj) { var str = []; for(var p in obj) if (obj.hasOwnProperty(p)) { str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p])); } return str.join("&"); } 我正在传递一个包

我正在从Javascript创建queryString,如下所示

serialize = function(obj) {
  var str = [];
  for(var p in obj)
    if (obj.hasOwnProperty(p)) {
      str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
    }
  return str.join("&");
}

我正在传递一个包含“&”(与符号)字符的参数,如下所示:

activityCategory=Cruises, Sailing & Water Tours
url编码值:

activityCategory=Cruises%2C%20Sailing%20%26%20Water%20Tours
但是

只返回
巡航、航行

如何获得活动类别的全部价值?您的方法是正确的。在您编码它和它到达服务器上的请求对象之间,一定有什么东西破坏了它。您如何准确地检查服务器上的值?我正在通过调试
ActivityCategory=SecurityManager.Encoder.HtmlEncode进行检查(Request.QueryString[“ActivityCategory”]?Request.Form[“ActivityCategory”])
如果解释不正确,
Request.QueryString.Keys
应该包含“Water Tours”。你能检查一下吗?请检查
Request.QueryString[“activityCategory”]
的实际值,而不是通过
SecurityManager.Encoder.HtmlEncode()
传递后得到的结果(不管是什么)。该HtmlEncode()方法中很可能存在错误。
Request.QueryString["activityCategory"]