位置: IT常识 - 正文

Web 页面之间传递参数的几种方法(html页面间传数据)

编辑:rootadmin
Web 页面之间传递参数的几种方法

推荐整理分享Web 页面之间传递参数的几种方法(html页面间传数据),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:html页面间传数据,网页之间传递值的几种方式,web页面之间的传递数据方式,网页之间传值,web页面传值的方式,网页之间传递数据,web页面之间的传递数据方式,web页面传值的方式,内容如对您有帮助,希望把文章链接给更多的朋友!

Web 页面之间传递参数的方法有很多种,下面列出一些常见的方法以及它们的代码示例。

一、前端直接传递参数

1、URL 参数传递(query string):通过 URL 的查询字符串(即问号后面的参数)将参数传递给页面。可以通过location.search或URLSearchParams对象来获取和解析参数。// 发送参数const params = {id: 123, name: 'Alice'};const url = `http://example.com/page?${new URLSearchParams(params)}`;window.location.href = url;// 接收参数const searchParams = new URLSearchParams(window.location.search);const id = searchParams.get('id');const name = searchParams.get('name');

 2、URL hash传递:通过 URL 的 hash 值来传递参数。例如,http://example.com/#/page?id=1可以传递一个名为id的参数。可以通过location.hash来获取和解析hash值中的参数。

// 发送参数const id = 123;window.location.hash = `#id=${id}`;// 接收参数const searchParams = new URLSearchParams(window.location.hash.substring(1));const id = searchParams.get('id');

 3、URL 路径传递:通过 URL 的路径参数来传递参数。例如,/users/:id可以传递一个名为id的参数。可以通过路由框架(如 React Router)来解析路径参数。

// 发送参数const id = 123;window.location.href = `http://example.com/page/${id}`;// 接收参数const id = parseInt(window.location.pathname.split('/').pop());Web 页面之间传递参数的几种方法(html页面间传数据)

 4、JavaScript 变量:通过 JavaScript 变量来传递参数。可以在不同的页面之间共享全局变量,或者在一个页面内使用模块化开发来传递参数。

// 发送参数const id = 123;window.myGlobalId = id;// 接收参数const id = window.myGlobalId;

 5、Cookie:通过在浏览器中存储 Cookie 来传递参数。可以通过document.cookie来读取和设置 Cookie。

// 发送参数document.cookie = 'id=123; path=/';// 接收参数const cookies = document.cookie.split(';').map(cookie => cookie.trim().split('='));const id = cookies.find(cookie => cookie[0] === 'id')[1];

 6、Web 存储:过 HTML5 的localStorage或sessionStorage来在浏览器中存储数据。可以通过localStorage.getItem()和localStorage.setItem()等方法来读取和设置存储的值。

// 发送参数localStorage.setItem('id', 123);// 接收参数const id = localStorage.getItem('id');

 7、自定义事件:通过自定义事件来在不同的组件之间传递数据。可以通过CustomEvent对象来定义和触发自定义事件,通过element.dispatchEvent()方法来触发事件。

// 发送参数const event = new CustomEvent('myEvent', {detail: {id: 123, name: 'Alice'}});document.dispatchEvent(event);// 接收参数document.addEventListener('myEvent', event => { const {id, name} = event.detail;});

二、后端间接传递参数

8、表单提交:过表单的提交将表单中的数据传递给后台服务器或其他页面。可以通过form元素的submit方法或XMLHttpRequest对象来实现表单提交。<!-- 发送参数 --><form method="POST" action="http://example.com/page"> <input type="text" name="id" value="123"> <input type="text" name="name" value="Alice"> <button type="submit">提交</button></form><!-- 接收参数 --><?php$id = $_POST['id'];$name = $_POST['name'];?>

9、WebSocket:通过 WebSocket 协议在浏览器和服务器之间实时传递数据。可以使用 WebSocket API 来建立 WebSocket 连接,并通过WebSocket.send()方法来发送数据。

// 发送参数const id = 123;const ws = new WebSocket('ws://example.com');ws.onopen = () => ws.send(JSON.stringify({id}));// 接收参数const ws = new WebSocket('ws://example.com');ws.onmessage = event => { const {id} = JSON.parse(event.data);};

 10、Fetch API:通过 Fetch API 发送 HTTP 请求,并通过请求的 body 传递数据。可以使用fetch()方法来发送请求,并通过body参数传递数据。

// 发送参数const params = {id: 123, name: 'Alice'};fetch('http://example.com/page', { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify(params)});// 接收参数const body = await fetch('http://example.com/page').then(res => res.json());const {id, name} = body;

 11、AJAX:通过 XMLHttpRequest 对象发送异步 HTTP 请求,通过请求的参数传递数据。可以通过XMLHttpRequest.send()方法发送请求,通过XMLHttpRequest.onreadystatechange事件监听请求的状态变化。

// 发送参数const xhr = new XMLHttpRequest();xhr.open('POST', 'http://example.com/page');xhr.setRequestHeader('Content-Type', 'application/json');xhr.onreadystatechange = function() { if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) { console.log(xhr.responseText); }};const params = {id: 123, name: 'Alice'};xhr.send(JSON.stringify(params));// 接收参数const xhr = new XMLHttpRequest();xhr.open('GET', 'http://example.com/page');xhr.onreadystatechange = function() { if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) { const {id, name} = JSON.parse(xhr.responseText); }};xhr.send();
本文链接地址:https://www.jiuchutong.com/zhishi/288123.html 转载请保留说明!

上一篇:微信小程序解决view点击事件穿透地图map触发markertap(微信小程序解决跨域问题)

下一篇:【图神经网络实战】深入浅出地学习图神经网络GNN(上)(图神经网络gat)

  • 餐饮业小规模开发票开什么
  • 产品含税价格加10个点不含税扣掉8个点合理吗
  • 济南非税是什么意思
  • 协定税率的简称
  • 用现金支付需要附哪些单据
  • 注册资金印花税减半政策
  • 企业年度财务报表主要包括
  • 土地结转会计分录是什么
  • 部分红冲的发票无法勾选怎么办
  • 多计提的销售费用冲销
  • 净值的公式
  • 冲以前年度暂估
  • 认购私募股权基金
  • 贷款厂家贴息
  • 统计应交增值税怎么算
  • 营改增后企业缴税种类
  • 企业所得税收入是含税还是不含税
  • 金融业保险业
  • 一般纳税人如何零申报
  • 纯利润和毛利润哪个多
  • 进口设备的重置成本包括什么
  • 分公司收到总公司拨款怎么做分录
  • 冲回坏账准备是什么意思
  • 领用原材料用于职工福利的税费怎么算
  • 小规模纳税人一个月能开多少税票
  • 鸿蒙怎么开启个性化桌面
  • w10的蜘蛛纸牌
  • hptasks.exe是病毒吗 是什么进程 hptasks进程说明
  • w10如何设置工作组
  • PHP简单实现HTTP和HTTPS跨域共享session解决办法
  • uniapp仿微信
  • 个人所得税必须交吗
  • nerf 怎么瞄准
  • 企业亏损还需要交增值税吗
  • 存货盘亏的账务处理进项税额转出
  • 分享项目成果
  • 前端大佬都有谁
  • 生态位模型原理
  • yolo训练教程
  • php绘制图形函数
  • 多缴税金抵税会怎么样
  • 固定资产改造替换
  • python3 静态方法
  • 增值税进项税加计抵扣
  • 个税汇算清缴时劳务报酬怎么计税
  • 购买办公用品进项税额可以抵扣吗
  • mysql联合索引使用规则
  • 11-ElementUI
  • 境外公司汇款给个人要交税吗
  • 发票替票该怎么做账
  • 财务软件在建立账套功能中提供了
  • 税控盘维护费全额抵扣分录
  • win7系统安装包在哪个文件夹
  • 企业所得税的计提
  • 小规模纳税人去年免税,红冲后今年开多少税率的发票
  • 企业试生产时间规定
  • 财务会计与管理会计的区别与联系?谁更棒?
  • sql语言中delete删除命令语句详解
  • xp系统 控制面板
  • 关闭antivirus
  • win7开机显示黑屏
  • win10安装固态硬盘打开软件卡
  • 安卓开发框架mvvm
  • python 爬虫例子
  • perl -i -pe
  • node远程ssh
  • linux的启动顺序
  • Windows10下安装fastdfs
  • python 任务 调度 管理
  • vue中使用js
  • android在手机上运行
  • js设置
  • unity3d Human skin real time rendering with blood and water drop effect真实模拟人皮实时渲染之血液和水珠掉落效果
  • js 数组处理
  • javascript default
  • 怎么打印纳税申报表带章的
  • 福建2021年水利水电招聘
  • 城市配套费需要缴纳契税
  • 税收优惠政策能调动公众的捐赠积极性
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设