位置: 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)

  • 荣耀X30max怎么设置铃声(荣耀x30max怎么设置红包提醒)

    荣耀X30max怎么设置铃声(荣耀x30max怎么设置红包提醒)

  • 做表格怎么套公式求和(做表格怎么套公式)

    做表格怎么套公式求和(做表格怎么套公式)

  • 微信分身怎么隐藏(微信分身怎么隐藏图标vivo)

    微信分身怎么隐藏(微信分身怎么隐藏图标vivo)

  • 微信拉黑可以看到朋友圈吗(微信拉黑可以看到头像更新吗)

    微信拉黑可以看到朋友圈吗(微信拉黑可以看到头像更新吗)

  • 微信打字自动转换英文(微信打字自动转换韩文)

    微信打字自动转换英文(微信打字自动转换韩文)

  • 锂电池突然断电能修吗(锂电池突然断电后充不进电了)

    锂电池突然断电能修吗(锂电池突然断电后充不进电了)

  • 淘宝展现量什么意思(淘宝里展现量指什么)

    淘宝展现量什么意思(淘宝里展现量指什么)

  • 如何提升机械硬盘读写速度(如何提升机械硬盘的读取速度)

    如何提升机械硬盘读写速度(如何提升机械硬盘的读取速度)

  • 小米的缓存数据有用吗(小米缓存数据是什么? 百度贴吧)

    小米的缓存数据有用吗(小米缓存数据是什么? 百度贴吧)

  • ipad充电需要充满吗(iPad充电需要充到100%吗)

    ipad充电需要充满吗(iPad充电需要充到100%吗)

  • 手机中框是哪个位置(手机中框哪个材质最好)

    手机中框是哪个位置(手机中框哪个材质最好)

  • 全网通与双4g有何区别(全网通和双卡双待哪个好)

    全网通与双4g有何区别(全网通和双卡双待哪个好)

  • 魅族16th plus充电速度(魅族16thplus充电器多少w)

    魅族16th plus充电速度(魅族16thplus充电器多少w)

  • 苹果11原相机有美颜吗(苹果11原相机有水印功能吗)

    苹果11原相机有美颜吗(苹果11原相机有水印功能吗)

  • vivox27录屏怎么没有声音(vivox27录屏怎么把声音录进去)

    vivox27录屏怎么没有声音(vivox27录屏怎么把声音录进去)

  • 华为mate30与30pro的区别(华为mate30与30pro参数对比)

    华为mate30与30pro的区别(华为mate30与30pro参数对比)

  • 找回手动删除聊天记录(手动误删聊天记录恢复)

    找回手动删除聊天记录(手动误删聊天记录恢复)

  • 艺术字怎么设置(艺术字怎么设置高和宽)

    艺术字怎么设置(艺术字怎么设置高和宽)

  • word怎么算平均值(word怎么算平均分保留小数)

    word怎么算平均值(word怎么算平均分保留小数)

  • 搜狗输入法如何添加日语(搜狗输入法如何清除输入记忆)

    搜狗输入法如何添加日语(搜狗输入法如何清除输入记忆)

  • 抖音橱窗在哪里(抖音橱窗在哪里取消托管)

    抖音橱窗在哪里(抖音橱窗在哪里取消托管)

  • AI:DeepSpeed Chat(一款帮用户训练自己模型的工具且简单/低成本/快 RLHF 训练类ChatGPT高质量大模型)的简介、安装、使用方法之详细攻略

    AI:DeepSpeed Chat(一款帮用户训练自己模型的工具且简单/低成本/快 RLHF 训练类ChatGPT高质量大模型)的简介、安装、使用方法之详细攻略

  • 房地产税收有哪些
  • 收到投资款要交企业所得税吗为什么
  • 减免税款最终转到哪个科目?
  • 成本结算怎么处理?
  • 小规模纳税人税额怎么做分录
  • 发生租赁费用怎么做账
  • 个人所得税租房专项扣除标准
  • 三证合一是哪三证孩子上学
  • 成本会计实训要求
  • 劳务派遣 税务
  • 保教费免征增值税政策
  • 出口退税进项发票稽核
  • 购电子承兑汇票差额计入什么科目?
  • 企业所得税减半征收计算公式
  • 装卸费可以抵扣销项税额吗
  • 离职补偿金个税计算器2022
  • 存货跌价准备如何结转
  • 无形资产摊销方法应当反映其经济利益
  • 出售已使用五年的住房有税收优惠吗?
  • 本月做账下月认证的进项怎么做账?
  • 库管和车间工人哪个好
  • 固定资产无偿转让程序是什么
  • 施工组织评审会谁组织
  • u盘怎么安装软件
  • 什么叫php
  • 个人独资所得税税率表最新
  • 固定资产拆除怎么处理
  • 高新企业研发费用比例
  • 查补以前年度所得税如何申报
  • 未能连接到一个windows 的服务win7
  • 最早在哪一年手机可以上网
  • php require include
  • php追加写入
  • php发送qq邮箱
  • 废料收入的成本怎么核算
  • 一次性劳务报酬所得如何扣税
  • php 无限级分类
  • 减免税费是几级科目
  • vue面试题2020
  • rmt命令 远端磁带传输协议模块
  • php socket编程
  • mysql分区实现
  • 电汇收款的会计分录
  • 出口抵减内销产品应纳税额怎么结转
  • verilog hdl中任务可以调用
  • 税控系统维护费普通发票可以全额抵扣吗
  • 关联公司开发票
  • 个体户做账流程新手必看
  • 公司名义送花圈
  • sqlserver实现离散组合算法
  • 通货膨胀溢价的英文
  • 小规模企业申报表填写
  • 实行自行申报的项目有哪些
  • 个人承担社保有哪些
  • 当月未开票收入八百万
  • 研发支出 期末
  • 补缴上年度所得税的会计分录
  • 开票信息指的是买方还是卖方
  • MySQL之Field‘***’doesn’t have a default value错误解决办法
  • MySQL 5.0.96 for Windows x86 32位绿色精简版安装教程
  • sql多表连接查询(详细实例)
  • 装双win7系统怎么设置
  • windows8安装程序
  • win8.1无法安装
  • ubuntu系统电脑开机键盘亮 屏幕不亮
  • linux误删除数据
  • 怎么隐藏不让别人发现
  • 360修复win7
  • cocos2d教程
  • javascriptz
  • pythonlist切片
  • shell脚本定时执行命令
  • unity自动寻路
  • dos跳转到指定目录
  • 交互式shell是什么意思
  • Chrome调试技巧
  • javascript 二维数组搜索
  • python守护线程与非守护线程
  • 2020年陕西省国税局局长
  • 美国海关税收起征点
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设