验证码: 看不清楚,换一张 查询 注册会员,免验证
  • {{ basic.site_slogan }}
  • 打开微信扫一扫,
    您还可以在这里找到我们哟

    关注我们

jquery如何实现页面跳转并传值

阅读:1434 来源:乙速云 作者:代码code

jquery如何实现页面跳转并传值

一、jQuery页面跳转

在jQuery中,页面跳转可以通过下面的方式来实现:

$(location).attr('href', url);

其中,$(location)表示当前URL,attr方法可以设置URL。url参数可以是一个相对路径,也可以是一个完整的URL地址。比如:

// 相对路径
$(location).attr('href', '/page2.html');

// 完整URL地址
$(location).attr('href', 'http://www.example.com/page2.html');

二、在页面跳转时传递参数

在实际应用中,我们不仅要实现页面跳转,有时候还需要将当前页面的一些状态或者参数传递到下一个页面中,这时候可以通过URL参数的方式来实现。

在jQuery中,可以通过下面的方式来获取当前页面的URL:

var url = window.location.href;

这个url变量中就包含了当前页面的完整地址。在跳转到下一个页面时,我们可以在URL中添加一些参数。添加参数的格式如下:

http://www.example.com/page2.html?param1=value1¶m2=value2

其中,?后面跟着的是参数列表,参数之间用&分隔。每个参数的格式都是参数名=值。比如:

http://www.example.com/page2.html?user=john&age=30

在跳转到下一个页面时,可以通过URL参数的方式来传递参数,代码如下:

$(location).attr('href', '/page2.html?user=john&age=30');

在下一个页面中,可以通过下面的方式来获取传递过来的参数:

var user = getUrlParameter('user');
var age = getUrlParameter('age');

其中,getUrlParameter是一个自定义的函数,具体实现如下:

function getUrlParameter(name) {
    name = name.replace(/[[]/, '\[').replace(/[]]/, '\]');
    var regex = new RegExp('[\?&]' + name + '=([^&#]*)');
    var results = regex.exec(location.search);
    return results === null ? '' : decodeURIComponent(results[1].replace(/+/g, ' '));
}

这个函数的作用是从URL参数列表中获取指定的参数值。如果找到了指定的参数,则返回它的值;否则返回空字符串。

三、使用jQuery实现页面跳转并传递参数的完整代码

下面是一个完整的例子,它演示了如何在jQuery中实现页面跳转并传递参数:



    
        
        jQuery页面跳转并传递参数
        
        
            function gotoPage2(name, age, gender) {
                // 构造URL参数
                var params = '?name=' + name + '&age=' + age + '&gender=' + gender;

                // 跳转到page2.html并传递参数
                $(location).attr('href', 'page2.html' + params);
            }
        
    
    
        
            

页面一

            跳转到页面二         
    

在上面的代码中,我们在页面一中添加了一个按钮,点击这个按钮就会跳转到页面二。在跳转到页面二的同时,我们将三个参数(名字、年龄、性别)以URL参数的形式传递给了页面二。在页面二中,可以通过getUrlParameter函数来获取这三个参数的值,代码如下:



    
        
        页面二
        
        
            $(document).ready(function () {
                // 获取从页面一传递过来的参数
                var name = getUrlParameter('name');
                var age = getUrlParameter('age');
                var gender = getUrlParameter('gender');

                // 显示参数的值
                $('#name').text(name);
                $('#age').text(age);
                $('#gender').text(gender);
            });

            function getUrlParameter(name) {
                name = name.replace(/[[]/, '\[').replace(/[]]/, '\]');
                var regex = new RegExp('[\?&]' + name + '=([^&#]*)');
                var results = regex.exec(location.search);
                return results === null ? '' : decodeURIComponent(results[1].replace(/+/g, ' '));
            }
        
    
    
        
            

页面二

            

名字: 

            

年龄: 

            

性别: 

        
    

在上面的代码中,我们通过$(document).ready方法来初始化页面,在这个方法中调用getUrlParameter函数来获取参数的值,并将其显示在页面中。

分享到:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: hlamps#outlook.com (#换成@)。
相关文章
{{ v.title }}
{{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
你可能感兴趣
推荐阅读 更多>