JS获取地址栏参数的几种方法小结

前端技术 2023/09/07 JavaScript

复制代码 代码如下:

<script>
 // 获取地址栏的参数数组
 function getUrlParams() {
  var search = window.location.search;
  // 写入数据字典
  var tmparray = search.substr(1, search.length).split(\"&\");
  var paramsArray = new Array;
  if (tmparray != null) {
   for (var i = 0; i < tmparray.length; i++) {
    var reg = /[=|^==]/;    // 用=进行拆分,但不包括==
    var set1 = tmparray[i].replace(reg, \'&\');
    var tmpStr2 = set1.split(\'&\');
    var array = new Array;
    array[tmpStr2[0]] = tmpStr2[1];
    paramsArray.push(array);
   }
  }
  // 将参数数组进行返回
  return paramsArray;
 }

 // 根据参数名称获取参数值
 function getParamValue(name) {
  var paramsArray = getUrlParams();
  if (paramsArray != null) {
   for (var i = 0; i < paramsArray.length; i++) {
    for (var j in paramsArray[i]) {
     if (j == name) {
      return paramsArray[i][j];
     }
    }
   }
  }
  return null;
 }

function test()
{
    alert(\"v=\"+getParamValue(\"name\"));
}

var test1= function()
{
  //alert(\"v1=\"+getParamValue(\"name\"));
  //alert(\"v2=\"+GetUrlParam(\"name\"));
  //alert(\"v3=\"+GetUrlParms(\"name\"));
  alert(\"v4=\"+getQuery(\"name\"));
}

function GetUrlParam(paramName) {
 var url = document.URL; //URL参数,你也可以用document.URL来获取,方法太多了
 var oRegex = new RegExp(\'[\\?&]\' + paramName + \'=([^&]+)\', \'i\');
 //var oMatch = oRegex.exec( window.top.location.search ) ; //获取当前窗口的URL
 var oMatch = oRegex.exec(url);
 if (oMatch && oMatch.length > 1)
  return oMatch[1]; //返回值
 else
  return \'\';
}

//获取url参数
function GetUrlParms(name) {
 var reg = new RegExp(\"(^|\\\\?|&)\" + name + \"=([^&]*)(\\\\s|&|$)\", \"i\");
 if (reg.test(location.href))
  return unescape(RegExp.$2.replace(/\\+/g, \" \"));
 return \"\";
}
var getQuery = function (i) {

var j = location.search.match(new RegExp(\"[?&]\" + i + \"=([^&]*)(&?)\", \"i\"));

return j ? j[1] : j

};
</script>

JS获取地址栏参数 :<br>

<a href=\"#\" onclick=\"test1();\">获取参数值</a>

本文地址:https://www.stayed.cn/item/19569

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。