.NET 获取Get方式URL中的参数键值
2015-05-29 23:21
393 查看
在Web开发中,我们常常会涉及到需要获取Get方式URL中的参数键值的情况,这里简单介绍三种方法:
第一种:常用的做法有使用JavaScript获取location.href后用正则表达式匹配获取此URL的所有键值对;也可以通过以“&”为分隔符进行分隔后存储在对象中,然后获取对象中的键值对,如下例子:
queryString.js
queryString.html
第二种:这里比如有个Key参数键,需要获取它对应的值;这时可以使用.NET里的Request.Form["Key"](针对Post)或Request.QueryString["Key"](针对Get),也可以用Request["Key"](Post和Get都可以)
其实.NET还有一种做法,就是获取到URL地址后转化为NameValueCollection对象示例,如下例子:
第一种:常用的做法有使用JavaScript获取location.href后用正则表达式匹配获取此URL的所有键值对;也可以通过以“&”为分隔符进行分隔后存储在对象中,然后获取对象中的键值对,如下例子:
queryString.js
var queryString= { data:{}, initial:function(){ var paramGroup; var tempGroup; var queryStr = new String(window.location.search); queryStr = queryStr.substr(1,queryStr.length);//remove "?" paramGroup = queryStr.split("&"); for(var i=0; i<paramGroup.length; i++){ tempGroup = paramGroup[i].split("="); this.data[tempGroup[0]] = tempGroup[1]; } }, getValue:function(key){ return this.data[key]; } }
queryString.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>获取Get方式URL中的参数键值</title> <script type="text/javascript" src="queryString.js"> </script> </head> <body> <div id="divParameter"> </div> <input type="button" id="btnNew" value="打开新窗口" onclick="window.open('queryString.html?id=1001&name='+encodeURI('博客园KenmuHuang'));" /> </body> <script type="text/javascript"> window.onload=function(){ queryString.initial(); document.getElementById("divParameter").innerHTML = "id:" + queryString.getValue("id") + "\r\nname:" + decodeURI(queryString.getValue("name")); }; </script> </html>
第二种:这里比如有个Key参数键,需要获取它对应的值;这时可以使用.NET里的Request.Form["Key"](针对Post)或Request.QueryString["Key"](针对Get),也可以用Request["Key"](Post和Get都可以)
其实.NET还有一种做法,就是获取到URL地址后转化为NameValueCollection对象示例,如下例子:
using System.Web; using System.Collections.Specialized; NameValueCollection collection = HttpUtility.ParseQueryString("?ProjectID=-1&ProID=-1&CurId=503&IsTender=Y&PlanID=-1&hasAccess=True&mode=v"); string hasAccess = collection.Get("hasAccess"); //“True”
相关文章推荐
- SwingWorker 简单使用方法
- 深入理解C++的动态绑定和静态绑定
- 【黑马程序员】-----java基础语法---流程控制语句
- 汉字在字库中的偏移地址计算、显示方法
- 浏览器的实现t
- Mesos的设计架构
- DPDK-CH3
- [模拟][NOIP2009] 潜伏者
- Python正则表达式教程
- Devexpress VCL Build v2014 vol 14.2.7发布
- Mesos DRF算法
- 【吾日三省吾身】2015.5.29-涅槃行动第十一天
- HDU 2222 Keywords Search (AC自动机入门题目)
- 迭代与递归迭代
- 一些自学的html/javascript代码(button,text及其调用函数用法)
- 美Cry的windows8.1滑动关机
- 美Cry的windows8.1滑动关机
- DB天气app冲刺二阶段第三天
- Difference between pages and blocks
- 关于Spring MVC非常详细的介绍(一位大神写的,强烈推荐)