在html界面获取地址栏内传过来的值的三种方法

来源:互联网 发布:mac os x ei 编辑:程序博客网 时间:2024/05/17 23:38

在HTML中接收地址栏中传递的参数方法有如下三种:

window.open ("11.htm?aa="+dd);问题就是从11.htm中接收aa的值

解决方案如下:

1.使用 window.location.search 来取得后面的参数

// param 为 参数的名称
function getParameter(param)
{
 var query = window.location.search;
 var iLen = param.length;
 var iStart = query.indexOf(param);
 if (iStart == -1)
  return "";
 iStart += iLen + 1;
 var iEnd = query.indexOf("&", iStart);
 if (iEnd == -1)
  return query.substring(iStart);

 return query.substring(iStart, iEnd);
}

然后调用getParameter 方法: var temp = getParameter("aa");

2.使用 window.location.href 来取得后面的参数

 var url=window.location .href;
  var aa=url.indexOf('=');

if (aa == -1)
  return "";

  url=url.substring(aa+1);
  window.alert(url);

两种方法其实思路是一样的,利用字符串的indexOf属性来取值。

3。将以下代码另存为HTML文件:alixixi.htm,然后打开站点:
http://127.0.0.1/alixixi.htm?log_id=111&cat_id=222&page=333

回车即可显示演示效果,正常接收由HTML文件传递的值.

<script language="JScript">
<!-
var LocString=String(window.document.location.href);
function GetQueryString(str){
var rs=new RegExp("(^|)"+str+"=([^/&]*)(/&|$)","gi").exec(LocString),tmp;
if(tmp=rs)return tmp[2];
return "没有这个参数";
}
alert("日记编号:"+GetQueryString("log_id"));
alert("分类编号:"+GetQueryString("cat_id"));
alert("所在页数:"+GetQueryString("page"));
-->
</script>

0 0