javascript获取URL参数与参数值的示例代码

内容摘要
复制代码 代码如下:<script> function goto_url(url){ var new_url = "http://shop.usteel.com/index.php?app=list_release";
文章正文
复制代码 代码如下:

<script>
                  function goto_url(url){
                      var new_url = "http://shop.usteel.com/index.php?app=list_release";
                      var d_date  = getParameter("date",url);
                      if(d_date != '' ){
                          new_url += "&"+d_date;
                      }
                      var species  = getParameter("species",url);
                      if(species != ''){
                          new_url += "&"+species;
                      }

                      window.open(new_url);

                  }
                  //javascript获取指定参数及其对应的值 
                  function getParameter(paraStr, url) 
                  { 
                      var result = ""; 
                      //获取URL中全部参数列表数据 
                      var str = "&" + url.split("?")[1]; 
                      var paraName = paraStr + "="; 
                      //判断要获取的参数是否存在 
                      if(str.indexOf("&"+paraName)!=-1) 
                      { 
                          //如果要获取的参数到结尾是否还包含“&” 
                          if(str.substring(str.indexOf(paraName),str.length).indexOf("&")!=-1) 
                          { 
                              //得到要获取的参数到结尾的字符串 
                              var TmpStr=str.substring(str.indexOf(paraName),str.length); 
                              //截取从参数开始到最近的“&”出现位置间的字符 
                              result=TmpStr.substr(TmpStr.indexOf(paraName),TmpStr.indexOf("&")-TmpStr.indexOf(paraName));   
                          } 
                          else 
                          {   
                              result=str.substring(str.indexOf(paraName),str.length);   
                          } 
                      }   
                      else 
                      {   
                          result="";   
                      }   
                      return (result.replace("&",""));   
                  } 
                  </script>

下面例子很完整 经测试
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
    <title>javascript获取URL参数和参数值</title> 
    <script type="text/javascript"> 
    <!-- 
    var url = "http://www.baidu.com/?age=25&k=1&site=asp&abc=123;" 

    //javascript获取指定参数及其对应的值 
    function getParameter(paraStr, url) 
    { 
        var result = ""; 
        //获取URL中全部参数列表数据 
        var str = "&" + url.split("?")[1]; 
        var paraName = paraStr + "="; 
        //判断要获取的参数是否存在 
        if(str.indexOf("&"+paraName)!=-1) 
        { 
            //如果要获取的参数到结尾是否还包含“&” 
            if(str.substring(str.indexOf(paraName),str.length).indexOf("&")!=-1) 
            { 
                //得到要获取的参数到结尾的字符串 
                var TmpStr=str.substring(str.indexOf(paraName),str.length); 
                //截取从参数开始到最近的“&”出现位置间的字符 
                result=TmpStr.substr(TmpStr.indexOf(paraName),TmpStr.indexOf("&")-TmpStr.indexOf(paraName));   
            } 
            else 
            {   
                result=str.substring(str.indexOf(paraName),str.length);   
            } 
        }   
        else 
        {   
            result="无此参数";   
        }   
        return (result.replace("&",""));   
    } 

    //调用方法:var 变量名 = getParameter("要获取的参数名", URL地址) 
    var r = getParameter("age",url); 

    //测试输出,结果是:site=popasp 
    alert(r); 
    //根据得到的结果可以使用 
    var pName = r.split("=")[0]; //获取参数名 
    var pValue = r.split("=")[1]; //获取参数值 

    //测试输出: 
    alert("参数名:" + pName + "\n\n" + "参数值:" + pValue); 

    //其他实际应用: 
    //可以根据需要,配合以下方法实现自己要实现的功能; 
    //var hostname = location.hostname; //获取当前域名(不包含http://) 
    //var localurl = location.href;   //获取当前完整的URL地址信息(包含http://,域名,路径,具体文件和全部传递参数) 
    //var referurl = document.referrer; //获取上一页完整的URL信息(包含http://,域名,路径,具体文件和全部传递参数) 

    //--> 
    </script> 
    </head> 

    <body> 
    </body> 
    </html>

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!