Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在html页面中获取url参数_Javascript_Jquery_Html - Fatal编程技术网

Javascript 在html页面中获取url参数

Javascript 在html页面中获取url参数,javascript,jquery,html,Javascript,Jquery,Html,我有一个html页面,它使用一个url加载,看起来有点像这样: http://localhost:8080/GisProject/MainService?s=C&o=1 我想在不使用jsp的情况下获取url中的参数。这可以使用Javascript或jQuery来完成。我想在使用Java服务器的远程机器上部署页面之前,先使用我的Node.js本地服务器测试页面 是否有任何库允许我这样做。给出了一个很好的解决方案: 让我们获取一个非编码URL,例如: 正在将作业打包到单个JS行中 url

我有一个html页面,它使用一个url加载,看起来有点像这样:

http://localhost:8080/GisProject/MainService?s=C&o=1
我想在不使用
jsp
的情况下获取url中的参数。这可以使用
Javascript
jQuery
来完成。我想在使用Java服务器的远程机器上部署页面之前,先使用我的
Node.js
本地服务器测试页面

是否有任何库允许我这样做。

给出了一个很好的解决方案:


让我们获取一个非编码URL,例如:

正在将作业打包到单个JS行中

urlp=[];s=location.toString().split('?');s=s[1].split('&');for(i=0;i<s.length;i++){u=s[i].split('=');urlp[u[0]]=u[1];}
  • 甚至可以在像ie6这样的旧浏览器上运行
//http://localhost:8080/GisProject/MainService?s=C&o=1
const params=新的URLSearchParams(document.location.search);
常数s=参数get(“s”);
常数o=参数get(“o”);
控制台信息//显示C
控制台信息(o)//show 1
假设我们的URL是,我们可以使用window.location.search获取查询字符串:

 const queryString = window.location.search;
 console.log(queryString);
 // ?product=shirt&color=blue&newuser&size=m
然后,我们可以使用URLSearchParams解析查询字符串的参数:

 const urlParams = new URLSearchParams(queryString);
然后我们对结果调用它的任何方法

例如,URLSearchParams.get()将返回与给定搜索参数关联的第一个值:

 const product = urlParams.get('product')
 console.log(product);
 // shirt

 const color = urlParams.get('color')
 console.log(color);
 // blue

 const newUser = urlParams.get('newuser')
 console log(newUser);
 // empty string

参数意味着查询字符串参数?@Utkanos是的,查询字符串参数SjQuery在这里没有帮助。客户端JavaScript还是服务器端JavaScript?如果是服务器端JavaScript,您在Node.js实例上使用哪些库来进行HTTP?为什么您要使用Node.js进行本地开发,但目标是运行Java的服务器?如果您的开发环境尽可能地反映您的生产环境,则会使生活更加轻松。@Utkanos客户端…我应该硬编码要加载到页面中的模块,还是可以通过解析客户端的参数并使用状态将正确的模块加载到页面中来动态执行此操作。我使用Way请在发布新答案时,至少添加对代码所做操作的一般说明和任何有用的提示-例如,知道URLSearchParams在pre Edge或其他旧浏览器中不存在会很有帮助。对代码有一个简单的英语解释总是很好的,即使它像您的示例中那样非常简单。不过,这是一个很好的解决方案。谢谢,这是我使用过或演示过的最简单、最不复杂的方法。我很乐意提供帮助。我还修改了代码,以便在旧的web浏览器上工作
 const queryString = window.location.search;
 console.log(queryString);
 // ?product=shirt&color=blue&newuser&size=m
 const urlParams = new URLSearchParams(queryString);
 const product = urlParams.get('product')
 console.log(product);
 // shirt

 const color = urlParams.get('color')
 console.log(color);
 // blue

 const newUser = urlParams.get('newuser')
 console log(newUser);
 // empty string