您的位置:首页 > Web前端 > JavaScript

js 页面之间的跳转、传参以及返回上一页

2017-12-23 22:09 603 查看


js实现html 页面之间的跳转传参以及返回上一页的相关知识点

一、页面之间的跳转传参

1、在页面之间跳转的方式有两种:

window.location.href=”test.html?num=10”   地址会改变参数也会被传递但是不会打开新窗口

window.open("test.html") 这样会重新打开一个新窗口。

2、获取参数

如果是按照第一种方式进行了传递则有参数,那么我们怎们获取url中的参数那,那就使用js默认的属性:  var url = location.search; 

其中的location.search 就是js自动获取url中? 后的所有值。获取了这个之后就可以使用substring,split等来获取参数了。

3、实例展示

[javascript] view
plain copy

        // 跳转url 以及传递的参数  

    window.location.href='http://img.as.com/news/image/newscenter/20111107zt/whd/30share/jieguo1n.html?money='+nums+'&url='+fxurl;  

  

        // 获取money,以及分型的地址  

    function GetRequest() {  

          var url = location.search;   

         var theRequest = new Object();  

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

            var str = url.substr(1);  

            //alert(str);  

            var strs= new Array();     

             strs = str.split('&');  

            var money=strs[0].substring(6);  

            fxurl=(strs[1].substring(4)).trim();  

            //alert(fxurl);  

            var  view=money+"元";  

            $("#jieguo1m").html(view);  

      }  

}  

GetRequest();  

这样当跳转到url指定的页面后,调用GetRequest();这个函数,函数中的location.search;来获取了url中?后的所有参数,接下来就是按照需求来解析了。

二、返回上一页

1、在原来的窗体中直接跳转用

[javascript] view
plain copy

window.location.href="test.html";  

2、返回上一页原页面中的表单中的数据会丢失

[javascript] view
plain copy

window.history.go(-1);  

3、返回上一页原页面
表单中的内容会保留

[javascript] view
plain copy

window.history.back();  

实例:

1、

[javascript] view
plain copy

<input type=button value=刷新 onclick="window.location.reload()">  

<input type=button value=前进 onclick="window.history.go(1)">   

<input type=button value=后退 onclick="window.history.go(-1)">  

<input type=button value=前进 onclick="window.history.forward()">   

<input type=button value=后退 onclick="window.history.back()">  

2、

[javascript] view
plain copy

<a href="javascript:history.go(-1)">返回上一页</a>   

<a href="javascript:location.reload()">刷新当前页面</a>   

<a href="javascript:" onclick="history.go(-2); ">返回前两页</a>   

<a href="javascript:" onclick="self.location=document.referrer;">返回上一页并刷新</a>   

<a href="javascript:" onclick="history.back(); ">返回上一页</a>   

这里看到了 <a href="javascript:">就说说这个:

[javascript] view
plain copy

<a href=”javascript:” onclick=”fun1()” >  </a>  

<a href=”javascript: undefined” onclick=”fun1()” >  </a>  

<a href=”javascript:void(0)” onclick=”fun1()” >  </a>  

这三种方式,要实现的效果是一样的。即不执行跳转而是执行对应的函数,而JavaScript:void(0)在页面内容很多的时候会好一些  

而且W3C标准不推荐在href里面执行javascript语句,所以还是用 onclick事件触发吧,所以我们不要这样写:<a href=javascript:function()>  </a>  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐