分类:
版权声明:本文为博主原创文章,未经博主允许不得转载。
先介绍一下JS中处理URL的方法:
网址示例:http://localhost/test/test.htm?id=1
- <mce:script languge=javascript><!--
- alert(window.location.pathname); --返回 /test/test.htm
- alert(window.location.search); --返回 ?id=1
- alert(window.location.href); --返回 http://localhost/test/test.htm?id=1
- // --></mce:script>
location对象
含有当前URL的信息.
属性
href 整个URL字符串.
protocol 含有URL第一部分的字符串,如http:
host 包含有URL中主机名:端口号部分的字符串.如//www.zzcn.net/server/
hostname 包含URL中主机名的字符串.如http://www.zzcn.net/ ;
port 包含URL中可能存在的端口号字符串.
pathname URL中"/"以后的部分.如~list/index.htm
hash "#"号(CGI参数)之后的字符串.
search "?"号(CGI参数)之后的字符串.
在HTML中用JS接收参数用到的函数
- 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);
- }
使用的时候:var temp = getParameter("传过来的参数");
必须得xx.htm?xx=xx这样用哦。呵呵,,,
HTML静态参数做法(JavaScript接收)---- 2
- /**
- * HTML接收参数
- */
- function request(paramName)
- {
- //获取URL的字符串
- var sSource=String(window.document.location);
- var sName= paramName;
- var sReturn="";
- var sQUS="?";
- var sAMP="&";
- var sEQ="=";
- var iPos;
- //获取sSource中的"?",无则返回 -1
- iPos=sSource.indexOf(sQUS);
- if(iPos==-1)
- return;
- //汲取参数,从iPos位置到sSource.length-iPos的位置,
- //若iPos = -1,则:从-1 到 sSource.length+1
- var strQuery=sSource.substr(iPos,sSource.length-iPos);
- // alert(strQuery);
- //先全部转换为小写
- var strLCQuery = strQuery.toLowerCase();
- var strLCName = sName.toLowerCase();
- //从子字符串strLCQuery中查找“?”、参数名,以及“=”,即“?参数名=”
- iPos = strLCQuery.indexOf(sQUS + strLCName + sEQ);
- //alert(iPos);
- //如果不存在
- if(iPos == -1)
- {
- //继续查找可能的后一个参数,即带“&参数名=”
- iPos = strLCQuery.indexOf(sAMP + strLCName + sEQ);
- }
- //判断是否存在参数
- if(iPos != -1)
- {
- sReturn = strQuery.substr(iPos + sName.length + 2,strQuery.length-(iPos + sName.length + 2));
- var iPosAMP = sReturn.indexOf(sAMP);
- if (iPosAMP == -1)
- {
- return sReturn;
- }
- else
- {
- sReturn = sReturn.substr(0,iPosAMP);
- }
- }
- return sReturn;
- }
比如URL=www.123.com?a1=中国&a2=美国&日本
参数接收:
- <mce:script language="javascript"><!--
- var a1=request("a1");
- var a2=request("a2");
- var a3=request("a3");
- alert("a1="+a1+",a2="+a2+",a3="+a3);
- // --></mce:script>
引用:http://blog.csdn.net/cyanapple_wen/article/details/5421096