编写一个方法来获取页面url对应key的值

(如:当前页地址为http://www.tgnet.com/index.aspx?id=123&name=test,输入"id"即获得"123",输入"name"获得"test")

 

function QueryString (val)
{
var uri = window.location.search;
var re = new RegExp("" +val+ "=([^&?]*)", "ig");
return ((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null);
}
比如 url地址 www.1234.com/page.html?aa=1&bb=2 获取aa的值
var cc = QueryString('aa');

上述方案有bug,
www.1234.com/page.html?aa=1&bb=2 &bbb=3 无法正确识别
现改进如下
var re = new RegExp("[?&]" +val+ "=([^&?]*)", "ig"); 
return ((uri.match(re))?(uri.match(re)[0].substr(val.length+2)):null);
以?或者&开始,以非?&结束 截取。




获取页面中所有电子邮箱

window.onload = function () {
var reemail = new RegExp("\\w+[@]\\w+[.]\\w+", "ig");
var str = document.getElementById("bigying").innerText;
var strre = str.match(reemail);
for (var i = 0; i < strre.length; i++) {
alert(strre[i]);
}
}

posted @ 2014-02-22 17:20  南瓜asp  阅读(716)  评论(0编辑  收藏  举报