我自己写了一个获取URL中参数的方法,你可以看看
<script type="text/javascript">
//获取URL地址中的参数
function requestArgs() {
var qs = location.search.length > 0 ? location.search.substring(1) : '',
args = {},
items = qs.length ? qs.split('&') : [],
item = null,
name = null,
value = null,
i = 0,
len = items.length;
for (i = 0; i < len; i++) {
item = items[i].split('=');
name = decodeURIComponent(item[0]);
value = decodeURIComponent(item[1]);
if (name.length) {
args[name] = value;
}
}
return args;
};
function c() {
var args = requestArgs(), len = parseInt(args['form11']), rand = null;
for (var i = 1; i < len; i++) {
rand = Math.round(Math.random() * 100);
document.getElementById('form' + i).value = rand
}
}
</script>
在这里我有几个假设:
1、假设你传的URL中有参数form11,并且这个值你传的是一个数字
2、假设你有n个需要赋值的DOM元素,并且你分别按照顺序赋了id属性,form1,form2,form3,form4 ......
location.search这个属性是获取地址中的参数部分的值的,其中包含"?",所以我会获取location.search.substring(1)的部分
substring函数是获取指定位置开始,往后的字符串的方法
split函数是根据某个字符串将指定字符串分割成数组的方法
decodeURIComponent函数是解码url中字符串的,你简单了解一下就可以
requestArgs这个方法内部的执行如果实在不懂,也没关系,知道怎么用就好
//调用方式,假设有这样的URL地址:http://www.baidu.com/?tn=06015236_2_pg
var args = requestArgs();
alert('tn'); //值是06015236_2_pg