web开发中如何获取地址栏中的参数以及获取地址栏

采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!)

function  GetQueryString(name)
{
      var  reg = new  RegExp( "(^|&)" + name + "=([^&]*)(&|$)" );
      var  r = window.location.search.substr(1).match(reg);
      if (r!= null ) return   unescape(r[2]); return  null ;
}
 
// 调用方法
alert(GetQueryString( "参数名1" ));
alert(GetQueryString( "参数名2" ));
alert(GetQueryString( "参数名3" ));

下面举一个例子:

若地址栏URL为:abc.html?id=123&url=http://www.maidq.com

那么,但你用上面的方法去调用:alert(GetQueryString("url"));

则会弹出一个对话框:内容就是 http://www.maidq.com

如果用:alert(GetQueryString("id"));那么弹出的内容就是 123 啦;

当然如果你没有传参数的话,比如你的地址是 abc.html 后面没有参数,那强行输出调用结果有的时候会报错:

所以我们要加一个判断 ,判断我们请求的参数是否为空,首先把值赋给一个变量:

var  myurl=GetQueryString( "url" );
if (myurl != null  && myurl.toString().length>1)
{
    alert(GetQueryString( "url" ));
}


或者说


1、使用jsp小脚本实现
<%
String value=request.getParameter("key");

%>

即可取出地址栏传递的key所代表的值

2、使用EL表达式实现
<h2>${param.key}</h2>

也可以取出地址栏传递的key所代表的值
 
        
 
        

获取地址栏

1、request.getScheme() 返回当前链接使用的协议;比如,一般应用返回http;SSL返回https;

2、在程序中的应用如下:

Java代码   收藏代码
  1. String path = request.getContextPath();  
  2.   
  3. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  4.   
  5. <base href="<%=basePath%>">  

 

3、复习一下request 的常用方法:

request.getSchema()可以返回当前页面使用的协议,http 或是 https;

request.getServerName()可以返回当前页面所在的服务器的名字;

request.getServerPort()可以返回当前页面所在的服务器使用的端口,就是80;

request.getContextPath()可以返回当前页面所在的应用的名字;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值