• 登录后跳转到登录前的页面


    实现这个功能,需要记住登录前的页面地址,可以把这个地址记录在session中,也可以把这个地址当做参数传给登录页面,还可以在原来的页面弹出一个层,在这个层里写出登录页面。这里我们介绍第二种方法,也就登录页面单独写,把登录前的页面地址当做参数传递给登录页面。

    在登录之前的页面,点击登录的时候,我们先获取当前页面的地址,然后进行编码,放到登录页面后面作为参数。

    示例代码如下

    var url=location.href;

    var paraString=encodeURIComponent(url);

    $("#signin-login").html("<a href='../home/login.html?paraString="+paraString +"'>登录</a>");

    在跳转到login.html?paraString=xxxx之后,先取出paraString参数的值,也就是登录前的页面地址,然后,在验证用户名、密码等通过之后,让页面跳转到paraString指向的页面地址。

    取出paraString参数

    (function($) {

             $.getUrlParam = function(name) {

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

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

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

                       return null;

             }

    })(jQuery); //通过jquery获取url参数

    var paraString=$.getUrlParam(paraString);

    验证通过后的跳转(如果取不到参数,则跳转到默认页面,一般是首页)

                                                            if(paraString==null||paraString==""){

                                                                     document.location="../index.html";

                                                            }else{

                                                                     document.location = paraString;

                                                            }

    其他两种方法,大家可以查资料尝试。

    参考资料:http://www.oschina.net/question/241620_60139

  • 相关阅读:
    ubuntu安装sublime无工具栏解决办法
    ubuntu安装eclipse无工具栏解决办法
    数据库设计
    cglib代理
    多线程简单实例(3)线程池
    多线程简单实例(2)生产者和消费者
    STL之迭代器(iterator)
    STL之vector
    “由于这台计算机没有终端服务器客户端访问许可证”解决方案
    STL之容器(containers) 简介
  • 原文地址:https://www.cnblogs.com/coodream2009/p/6508839.html
Copyright © 2020-2023  润新知