jQuery获取地址栏参数插件(模仿C#)


Posted in Javascript onOctober 26, 2010
$.request = (function () { 
var apiMap = {}; 
function request(queryStr) { 
var api = {}; 
if (apiMap[queryStr]) { 
return apiMap[queryStr]; 
} 
api.queryString = (function () { 
var urlParams = {}; 
var e, 
d = function (s) { return decodeURIComponent(s.replace(/\+/g, " ")); }, 
q = queryStr.substring(queryStr.indexOf('?') + 1), 
r = /([^&=]+)=?([^&]*)/g; 
while (e = r.exec(q)) 
urlParams[d(e[1])] = d(e[2]); return urlParams; 
})(); 
api.getUrl = function () { 
var url = queryStr.substring(0, queryStr.indexOf('?') + 1); 
for (var p in api.queryString) { 
url += p + '=' + api.queryString[p] + "&"; 
} 
if (url.lastIndexOf('&') == url.length - 1) { 
return url.substring(0, url.lastIndexOf('&')); 
} 
return url; 
} 
apiMap[queryStr] = api; 
return api; 
} 
$.extend(request, request(window.location.href)); 
return request; 
})();

接下来简介绍一下插件的用法。

我们可以通过 $.request.queryString["key"] 就能获取到地址栏上面key参数。

大多数情况下我用这个插件来读取一些配置信息。

我们有时候会在 html 标签中加入一些其他的非HTML属性来作为标志信息,比如我们有时候会写<a id="demo" href="javascript:;" config="?title=hello&auto=true&">Demo</a>

这样子我们通过


var config = $.request($("#demo").attr("config")).queryString;

var title = config.title;

很方便就能读取a上面的配置信息,而且我们不需要给a 添加太多其他的非Html属性。

Javascript 相关文章推荐
ppk谈JavaScript style属性
Oct 10 Javascript
js数字输入框(包括最大值最小值限制和四舍五入)
Nov 24 Javascript
Extjs EditorGridPanel中ComboBox列的显示问题
Jul 04 Javascript
Javascript模块化编程详解
Dec 01 Javascript
JavaScript跨域调用基于JSON的RESTful API
Jul 09 Javascript
JSON对象 详解及实例代码
Oct 18 Javascript
详解Vue.js 2.0 如何使用axios
Apr 21 Javascript
用node和express连接mysql实现登录注册的实现代码
Jul 05 Javascript
JavaScript实现写入文件到本地的方法【基于FileSaver.js插件】
Mar 15 Javascript
在Bootstrap开发框架中使用dataTable直接录入表格行数据的方法
Oct 25 Javascript
JS实现小星星特效
Dec 24 Javascript
ES6 Iterator遍历器原理,应用场景及相关常用知识拓展详解
Feb 15 Javascript
自制轻量级仿jQuery.boxy对话框插件代码
Oct 26 #Javascript
jquery ui resizable bug解决方法
Oct 26 #Javascript
HTML Dom与Css控制方法
Oct 25 #Javascript
Dom在ajax技术中的作用说明
Oct 25 #Javascript
Dom与浏览器兼容性说明
Oct 25 #Javascript
Dom 是什么的详细说明
Oct 25 #Javascript
Javascript类库的顶层对象名用户体验分析
Oct 24 #Javascript
You might like
PHP 常见郁闷问题答解
2006/11/25 PHP
PHP入门速成教程
2007/03/19 PHP
PHP parse_url 一个好用的函数
2009/10/03 PHP
不支持fsockopen但支持culr环境下下ucenter与modoer通讯问题
2011/08/12 PHP
利用中国天气预报接口实现简单天气预报
2014/01/20 PHP
简单说说PHP优化那些事(经验分享)
2014/11/27 PHP
php+mysql结合Ajax实现点赞功能完整实例
2015/01/30 PHP
yii2 上传图片的示例代码
2018/11/02 PHP
从阿里妈妈发现的几个不错的表单验证函数
2007/09/21 Javascript
JS target与currentTarget区别说明
2011/08/28 Javascript
打印json对象的内容及JSON.stringify函数应用
2013/03/29 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
url中的特殊符号有什么含义(推荐)
2016/06/17 Javascript
AngularJs Injecting Services Into Controllers详解
2016/09/02 Javascript
基于vue实现分页/翻页组件paginator示例
2017/03/09 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
小程序实现带年月选取效果的日历
2018/06/27 Javascript
Vue函数式组件-你值得拥有
2019/05/09 Javascript
jquery实现动态改变css样式的方法分析
2019/05/27 jQuery
[22:07]DOTA2-DPC中国联赛 正赛 iG vs Magma 选手采访
2021/03/11 DOTA
python访问抓取网页常用命令总结
2017/04/11 Python
Tensorflow的可视化工具Tensorboard的初步使用详解
2018/02/11 Python
python3.6+django2.0+mysql搭建网站过程详解
2019/07/24 Python
Django中的FBV和CBV用法详解
2019/09/15 Python
简单瞅瞅Python vars()内置函数的实现
2019/09/27 Python
Python 实现Image和Ndarray互相转换
2020/02/19 Python
如何打包Python Web项目实现免安装一键启动的方法
2020/05/21 Python
PyTorch中clone()、detach()及相关扩展详解
2020/12/09 Python
美国花布包包品牌:Vera Bradley
2017/08/11 全球购物
英国独特礼物想法和个性化礼物网站:notonthehighstreet.com
2018/04/16 全球购物
Chantelle仙黛尔内衣美国官网:法国第一品牌内衣
2018/07/26 全球购物
素质教育标语
2014/06/27 职场文书
党员自我评议个人对照检查材料
2014/09/16 职场文书
Django cookie和session的应用场景及如何使用
2021/04/29 Python
Python天气语音播报小助手
2021/09/25 Python
尝试使用Python爬取城市租房信息
2022/04/12 Python