获取调用JS链接所带的参数

来源:互联网 发布:新东方考研数据库 编辑:程序博客网 时间:2024/06/13 01:38

转载自:http://blog.csdn.net/lanlandechong/article/details/1768272


如果在一个页面引用一个JS文件 

<script id=test language=javascript src=test.js?id=1&name=doll.net charset=gb2312 type=text/javascript></script>
 要在 test.js 获取所带的 1 和 doll.net
需在js里写如下函数
function tes(paramName)   
{   
    var reg 
= new RegExp("(^|/?|&)"+ paramName+"=([^&]*)(/s|&|$)""i");
  
    
if (reg.test(test.src)) //test为script ID 
        return RegExp.$2
    
else
        
return ""
}

调用 alert(test("id"));
弹出值 1

上面这个我不知道原作者是不是可以成功,但在我这里就是不成功,我看了下,结合自己的改了下,
 如果在一个页面引用一个JS文件

<script id="brccount" language="javascript" src="http://192.168.1.33:89/statistic.js?Siteid=4&Adid=2" charset="gb2312" type="text/javascript"></script>

 
要在 test.js 获取所带的 1 和 doll.net
需在js里写如下函数

 

function tes(paramName)   
{   
    var reg 
= new RegExp("(^|/?|&)"+ paramName+"=([^&]*)(/s|&|$)""i");
  
    
if (reg.test(brccount.src)) //test为script ID 
        return RegExp.$2
    
else
        
return ""
}
这样可以成功
另外一个朋友也给出了加一个差不多的方法
//var s=document.getElementsByTagName("head")[0].getElementById("brccount").src;
var s=document.getElementById("brccount").src;

function getParameter(str,_parameter)
{
    
    var sValue
=str.match(new RegExp("[?&]"+_parameter+"=([^&]*)(&?)","i"));
    
if(sValue?sValue[1]:sValue==null)
       
return sValue?sValue[1]:sValue;
}

var Siteid 
=getParameter(s,"id");
原创粉丝点击