点击跳转,将A页面参数带到B页面

故事起源:

今天有个网友有个网友问我,怎么从A页面跳转到B页面,并且把参数带过去。Emm……之前我也做个类似的事情,觉得无足轻重,就没有记录下来了,今天想想,问题不分大小。Emm……直接送佛送到西,和大家分享一下吧!

 

 

 Emm……后来回想了一下我的博客,之前的确写过相关的文章,罪过罪过……html通过url传值

其实传参的方式还有一种方法,就是将参数set到缓存中,然后需要的时候再将其get取出。

一个demo告诉你怎么用:

A页面:

<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>我是A页面</title>
 </head>

 <body>
   <a href="b.html" target="_blank" class="open-popup" my-data="123456" onclick="setData(this)" style="color: #23ade5;">我是123456

<script src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script>
<script>
    function setData(obj) {
        var id = $(obj).attr("my-data");
        window.localStorage.setItem("id", id);
        alert(id);
    }
</script>

</body>
</html>

B页面:

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>我是B页面</title>
 </head>
 <body onload="loads();">

 <script src="https://cdn.bootcss.com/jquery/2.1.4/jquery.min.js"></script>
 <script>
    function loads(){
    var id=window.localStorage.getItem("id")
    alert(id);
    };
  </script>
 </body>
</html>

效果:在A页面——点击“我是123456”,跳转到B页面弹出参入的参数

Emm……简单粗暴,就这样,这时候。我们要补给一些知识。

拓展:

1、什么是localStorage?

在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同。

2、localStorage的支持情况(也就是是说,一般的浏览器和Android还有ios设备都支持)

 相关资料:

localStorage使用总结

欢迎加入 优快云技术交流群:(点击即可加群)QQ群:681223095。

因经常有人留言,未能及时查看到和回复,所以特建此群,以方便交流。方便问题讨论,有问题和没有问题的小伙伴均可加入,用作自我学习和共同进步。本博主不一定长期在线,但是qq群里会有很多热心的小伙伴,大家一起讨论解决问题。
右边的二维码是公众号。关注公众号,更多学习内容给予推送,争取每日更新

这里写图片描述

 

 

 

### 实现网页从A页面跳转到B页面的方法 在Web开发中,实现从A页面跳转到B页面通常可以通过多种方式完成。以下是几种常见的方法及其具体实现: #### 方法一:使用JavaScript进行页面跳转 可以利用`window.location.href`来实现简单的页面跳转功能[^3]。 ```javascript // 假设目标页面为 B.html window.location.href = 'B.html'; ``` 如果需要传递参数,则可以在URL后面附加查询字符串,并对特殊字符(如中文)进行编码处理。 ```javascript let param = encodeURI('你好'); // 对中文进行编码 window.location.href = `B.html?message=${param}`; ``` 在B页面接收参数时,可解析URL中的查询字符串并对其进行解码操作。 ```javascript function getQueryVariable(variable) { const query = window.location.search.substring(1); const vars = query.split('&'); for (const varPair of vars) { const pair = varPair.split('='); if (pair[0] === variable) { return decodeURI(pair[1]); } } } console.log(getQueryVariable('message')); // 输出接收到的消息 ``` --- #### 方法二:基于Vue框架的路由跳转 对于前端项目采用Vue.js的情况,推荐使用其内置的`vue-router`插件来进行页面间的导航和参数传递[^2]。 定义好路由配置之后,在A页面触发跳转逻辑时,可通过编程式导航的方式携带参数至目标页面。 ```javascript this.$router.push({ path: '/pageB', query: { message: '你好' } // 使用query方式进行简单传参 }); ``` 当访问的是同一个SPA应用内的组件切换场景下,即使不重新加载整个页面也能更新显示内容以满足需求。 --- #### 方法三:Uni-app环境下的跨页通信机制 针对移动端混合开发工具——uni-app而言,它提供了专门用于解决此类问题API接口即`uni.navigateTo()`函数调用来达成目的同时支持附带额外的数据一同发送给下一个界面实例化过程之中作为初始化依据之一[^1]。 下面是一个具体的例子展示如何设置按钮绑定事件处理器从而执行上述动作序列: ```html <button @click="navigateToPage">前往B页面</button> <script> export default { methods:{ navigateToPage(){ uni.navigateTo({ url:'/pages/pageB/pageB?message='+encodeURIComponent('你好') // 加密传输中文字符 }); } } }; </script> ``` 而在接受端也就是所谓的"B页面",则需读取这些由上一层级所提供的初始设定值以便进一步加工或者渲染出来呈现给最终使用者查看: ```javascript onLoad(option){ console.log(decodeURIComponent(option.message)); // 解析得到的信息 } ``` --- ### 总结 以上分别介绍了三种不同的技术栈环境下怎样做到让一个web文档链接另一份资源文件的同时还能捎带上某些必要的上下文线索供后者加以运用的实际做法。无论是传统的原生JS脚本编写还是现代化MVVM架构模式下的解决方案都各有千秋适合各自的特定应用场景选用即可。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值