jQuery获取地址栏参数插件(模仿C#)_Javascript教程-查字典教程网
jQuery获取地址栏参数插件(模仿C#)
jQuery获取地址栏参数插件(模仿C#)
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下:$.request=(function(){varapiMap={};functionrequest(queryStr){...

复制代码 代码如下:

$.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教程学习
    热门Javascript教程学习
    编程开发子分类