js和URL的传递、窗口的打开

javascript获取url参数值的方法

第一种使用正则表达式,可以根据参数名字来获取参数值

function getQueryString(name) { 

var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); 

var r = window.location.search.substr(1).match(reg); 

if (r != null) return unescape(r[2]); return null; 

用法:

alert(getQueryString("userName"))

第二种 直接根据字符串截取参数

function GetRequest() { 

var url = location.search; //获取url中"?"符后的字串 

var theRequest = new Object(); 

if (url.indexOf("?") != -1) { 

var str = url.substr(1); 

strs = str.split("&"); 

for(var i = 0; i < strs.length; i ++) { 

theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]); 

return theRequest; 

用法:

var Request = new Object(); 

Request = GetRequest(); 

var 参数1,参数2,参数3,参数N; 

参数1 = Request['参数1']; 

参数2 = Request['参数2']; 

参数3 = Request['参数3']; 

参数N = Request['参数N']; 


javascript打开新窗口、页面

1、 //在同当前窗口中打开窗口

超链接

<a href="http://www.baidu.com" title="这是一个新页面">Welcome</a>

等效于js代码

window.location.href="http://www.baidu.com";    

 

2、  //在另外新建窗口中打开窗口

超链接

<a href="http://www.baidu.com" title="这是一个新页面" target="_blank">Welcome</a>

等效于js代码

window.open("http://www.baidu.com");   

js控制打开的新窗口

function openwin() {

       window.open ("链接地址", "newwindow", "height=100, width=400, toolbar =no, menubar=no,scrollbars=no, resizable=no,       location=no, status=no") //写成一行

}

关闭窗口   window.close()


js获取参数为乱码的解决办法

传参数时使用encodeURI(url)

function send(){

var url = "NewFile.html";

var userName = $("#userName").html();

window.open(encodeURI(url + "?userName=" + userName));

}

接收参数时使用decodeURI(参数名)

function get(){

       var urlinfo = window.location.href;

       var userName = urlinfo.split("?")[1].split("=")[1];

       alert(decodeURI(userName));

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值