在Web开发中,我们常常会涉及到需要获取Get方式URL中的参数键值的情况,这里简单介绍三种方法:

第一种:常用的做法有使用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”

.NET 获取Get方式URL中的参数键值的更多相关文章

  1. js:通过正则匹配获取页面的url中的参数

    简介:获取页面参数 原生js: //通过正则匹配获取当前页面的url中的参数 function getUrlParam(name){ var reg = new RegExp("(^|&am ...

  2. 使用JS,获取URL中指定参数的值

    /** * 获取URL中指定参数的值 * * @param name 参数名称 * @returns */ function getQueryString(name) { var reg = new ...

  3. 关于requestMapping 进行url映射实现小小知识点 以及如何获取请求的url中的参数

    requstMapping 用来处理url映射  可以作用在controller类上  也可以作用在方法上 经常使用的方式  通过接收一种映射关系 @RequestMapping("/del ...

  4. 取URL中各个参数的值

    取参数值的方法有很多,个人记录一个方便好用的 //查询参数(参数名)function GetQueryString(name) {    var reg = new RegExp("(^|& ...

  5. 获取当前页面url中的参数 coffeescript+node.js+angular

    获取当前url:@$window.alert @$location.url()获取参数(json格式)@$window.alert @$location.search().channel

  6. javascript获取和设置URL中的参数

    勘误版 function getQuery(key, url) { url = url || window.location.href; if (url.indexOf('#') !== -1) ur ...

  7. js获取url中指定参数的值(含带hash)

    function getUrlVars() { var vars = {}; var parts = window.location.href.replace(/[?&]+([^=&] ...

  8. 获取URL中某个参数的值

    JS代码: function getQueryString(name){ var reg = new RegExp("(^|&)" + name + "=([^& ...

  9. 替换url中某个参数的值或是添加某个参数的方法(js 分页上下页可以使用)

    function changeUrl(base, find, value) { var offset = base.indexOf(find); var index; var rr = ''; if( ...

随机推荐

  1. iOS贝塞尔曲线(UIBezierPath)的基本使用方法

    简介 UIBezierPath是对Core Graphics框架的一个封装,使用UIBezierPath类我们可以画出圆形(弧线)或者多边形(比如:矩形)等形状,所以在画复杂图形的时候会经常用到. 分 ...

  2. Scrum卡片层次图

    对照国内的项目管理软件禅道,可以好好感受一下,何为Scrum. 看板则一定要是实物,才有感觉.

  3. Android——远程存储器存储:JDK方式和Volley框架的get和post

    注意:要搭建好环境,运行 用volley方法时要把包导入project下的模块下的libs目录下 package com.example.chenshuai.myapplication; import ...

  4. [转]Java中的POJO类

    简单的Java对象(Plain Old Java Objects)实际就是普通JavaBeans,使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter se ...

  5. gulp实例

    前端生产环境的简单部署http://ionichina.com/topic/558a1c1346cb5ff7268cee9d var gulp = require('gulp'); // 引入gulp ...

  6. find命令查找包含指定内容的文件

    find / | xargs grep function 查找系统根目录下面的所有文件的内容中包含有function字符串的文件列表. find .|xargs grep xfind . -exec ...

  7. 将html转换为Drupal模板文件的一般步骤

    本篇文章以自定义page.tpl.php文件为例,介绍在Drupal主题开发工作中,将html文件转换为tpl模板文件的一般步骤. 仅保留html文件中body标记之间的内容(不含body标记),其他 ...

  8. JPA和Spring-Data-JPA简介

    什么是JPA JPA(Java Persistence API)是Sun官方提出的Java持久化规范.它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据.它的出现主要是为了 ...

  9. Spring Cloud Config 配置中心 自动加解密功能 jasypt方式

    使用此种方式会存在一种问题:如果我配置了自动配置刷新,则刷新过后,加密过后的密文无法被解密.具体原因分析,看 SpringCloud 详解配置刷新的原理 使用  jasypt-spring-boot- ...

  10. FatJar in 创新实训 自然语言交流系统

    Fat Jar Eclipse Plug-In是一个可以将Eclipse JavaProject的所有资源打包进一个可执行jar文件的小工具,可以方便的完成各种打包任务,我们经常会来打jar包,但是e ...