前端HTML网页之间传递数据多种办法,附代码案例

这篇具有很好参考价值的文章主要介绍了前端HTML网页之间传递数据多种办法,附代码案例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

先看效果 

前端页面间传值,HTML,笔记,基础平台开发,前端,html,javascript

前端页面间传值,HTML,笔记,基础平台开发,前端,html,javascript

 文章来源地址https://www.toymoban.com/news/detail-706785.html

 目前常用的有三种办法

session传递,cookie传递,url传递

url会暴露参数,其余的两个是保存在服务端和浏览器中,不会暴露在地址栏里面

使用url:

前端页面间传值,HTML,笔记,基础平台开发,前端,html,javascript

 

下面依次介绍


一.session传递

index.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>HTML1</title>
</head>
<body>
    <h1>Welcome to HTML1!</h1>
    <form method="post" action="receive.html">
        <label for="name">Name:</label>
        <input type="text" id="name" name="name">
        <input type="submit" value="Submit">
    </form>
    <script>
        // 获取表单元素和输入框元素
        const form = document.querySelector('form');
        const input = document.querySelector('#name');
        // 在表单提交时将数据保存到sessionStorage中
        form.addEventListener('submit', (event) => {
            event.preventDefault();
            sessionStorage.setItem('name', input.value);
            form.submit();
        });
    </script>
</body>
</html>

receive.html 

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>HTML2</title>
</head>
<body>
    <h1>Welcome to HTML2!</h1>
    <p>Name: <span id="name"></span></p>
    <script>
        // 获取session中的数据
        const name = sessionStorage.getItem('name');
        // 将数据渲染到页面上
        document.getElementById('name').textContent = name;
    </script>
</body>
</html>

案例说明: 

  1. 在HTML1中,我们使用form标签将数据提交到HTML2页面,并设置methodpostaction为HTML2的文件路径。
  2. 在HTML2中,我们使用JavaScript获取session中的数据,然后将数据渲染到页面上。我们可以使用sessionStorage对象来存储数据,它可以在不同的页面之间共享数据。在这里,我们存储了用户输入的姓名,并在HTML2中获取并渲染了这个数据。

 

如果传递失败,检查一下以下问题:

  1. HTML1文件中的表单action属性设置错误,导致数据无法传递到HTML2页面。在这里,需要确保HTML1中表单的action属性设置为HTML2的文件路径,如action="html2.html"
  2. HTML2文件中的JavaScript代码没有正确地从sessionStorage中获取数据。需要确保使用正确的key来获取sessionStorage中的数据。在这里,我们使用的key是name,所以需要确保获取数据的代码中使用的也是这个key,如const name = sessionStorage.getItem('name');
  3. 在本地演示时,需要确保HTML1和HTML2两个文件都在同一个服务器上运行,否则sessionStorage无法正常工作。
  4. 如果使用了浏览器的隐身模式,也可能导致sessionStorage无法正常工作。 如果以上几个原因都不是问题的话,建议检查浏览器的开发者工具中是否有相关的错误信息或警告信息。

 


二.cookie传递

index.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>HTML1</title>
</head>
<body>
    <h1>Welcome to HTML1!</h1>
    <form method="post" action="receive.html">
        <label for="name">Name:</label>
        <input type="text" id="name" name="name">
        <input type="submit" value="Submit">
    </form>
    <script>
        // 获取表单元素和输入框元素
        const form = document.querySelector('form');
        const input = document.querySelector('#name');

        // 在表单提交时将数据保存到cookie中
        form.addEventListener('submit', (event) => {
            event.preventDefault();
            document.cookie = `name=${input.value}`;
            form.submit();
        });
    </script>
</body>
</html>

receive.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>HTML2</title>
</head>
<body>
    <h1>Welcome to HTML2!</h1>
    <p>Name: <span id="name"></span></p>
    <script>
        // 获取cookie中的数据
        const cookies = document.cookie.split(';');
        let name = '';
        for (let cookie of cookies) {
            cookie = cookie.trim();
            if (cookie.startsWith('name=')) {
                name = cookie.substring(5);
                break;
            }
        }
        // 将数据渲染到页面上
        document.getElementById('name').textContent = name;
    </script>
</body>
</html>

案例解释:

  1. 在HTML1中,我们使用form标签将数据提交到HTML2页面,并设置methodpostaction为HTML2的文件路径。
  2. 在HTML1中,我们使用JavaScript监听表单的提交事件,在事件处理程序中将数据保存到cookie中,并且在页面跳转之前提交表单。这样,在HTML2中就可以通过cookie获取到数据并渲染了。
  3. 在HTML2中,我们使用JavaScript获取cookie中的数据,并渲染到页面上。我们可以使用document.cookie来访问cookie,它返回一个字符串,包含所有cookie的键值对。在这里,我们遍历这个字符串,找到名为name的cookie,并获取它的值。然后将这个值渲染到页面上。

 三.url传输

 index.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>HTML1</title>
</head>
<body>
    <h1>Welcome to HTML1!</h1>
    <form method="get" action="receive.html">
        <label for="name">Name:</label>
        <input type="text" id="name" name="name">
        <input type="submit" value="Submit">
    </form>
    <script>
        // 获取表单元素和输入框元素
        const form = document.querySelector('form');
        const input = document.querySelector('#name');

        // 在表单提交时将数据拼接到URL中
        form.addEventListener('submit', (event) => {
            event.preventDefault();
            const url = new URL(form.action);
            url.searchParams.set('name', input.value);
            window.location.href = url.toString();
        });
    </script>
</body>
</html>

receive.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>HTML2</title>
</head>
<body>
    <h1>Welcome to HTML2!</h1>
    <p>Name: <span id="name"></span></p>
    <script>
        // 获取URL中的参数
        const params = new URLSearchParams(window.location.search);
        const name = params.get('name');
        // 将数据渲染到页面上
        document.getElementById('name').textContent = name;
    </script>
</body>
</html>

前端页面间传值,HTML,笔记,基础平台开发,前端,html,javascript 

 

案例解释:

  1. 在HTML1中,我们使用form标签将数据提交到HTML2页面,并设置methodgetaction为HTML2的文件路径。
  2. 在HTML1中,我们使用JavaScript监听表单的提交事件,在事件处理程序中将数据拼接到URL中,并跳转到这个URL。这样,在HTML2中就可以通过URL获取到数据并渲染了。
  3. 在HTML2中,我们使用JavaScript获取URL中的参数,并渲染到页面上。我们可以使用URLSearchParams来访问URL中的参数,它提供了一些实用的方法,如get()set()等。在这里,我们获取名为name的参数,并将它渲染到页面上。

 

到了这里,关于前端HTML网页之间传递数据多种办法,附代码案例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Windows和Linux之间如何传递数据|两台Linux之间如何传递数据

    摘要:我们租用了一台服务器,然后我们想要把我们写的项目上传到自己的Linux服务器中,那么我们应该怎么上传呢?如果我们想要从服务器中下载一些资料,那么又该如何进行呢?看这篇文章将会告诉你答案。 把数据从本地电脑上传到Linux服务器的方式有很多,这里介绍最

    2024年02月03日
    浏览(45)
  • 19.组件之间传递数据

    不同组件传递数据的时候,最好不要直接传递复杂数据类型(比如对象,数组) 前端需要处理的数据层级一般不会很多,需要在多处使用的数据一般会被放到数据库中 目录 1  组件的关系 2  父向子传递数据-props 3  子向父传递数据-自定义事件 4  父子组件同步数据 v-model与

    2024年02月09日
    浏览(55)
  • HTML前端静态网页制作

    在制作网页之前,首先先分析网页是那些部分组成,可以从以下的代码看出,分为头部、导航栏、logo部分、文字部分等等这些组成。多的不说,直接上代码,本次静态网页代码分为html和css部分。  在css部分,每一个小部分都写有注释,可能写得不太好,仅供参考。  效果如

    2024年02月03日
    浏览(58)
  • 前端之HTML——网页的骨架!!

    目录 一、HTML介绍 二、HTML标签 (一)基础标签 (二)其他标签 2.1        6个常用标签 2.2        8个文本标签 2.3        6个列表标签 2.4        4个表格标签 2.5        4个媒体标签 2.6        1个嵌入标签 2.7        1个表单标签 三、HTML语义化标签 四、HTML标准属性

    2024年04月08日
    浏览(59)
  • 情人节特别定制:多种语言编写动态爱心网页(附完整代码)

    随着七夕节的临近,许多人都在寻找独特而令人难忘的方式来表达爱意。在这个数字时代,结合创意和技术,我们可以使用多种开发语言来编写一个动态的新型网页,为这个浪漫的节日增添一份特别的礼物。在本文中,我们将带你探索如何使用不同的开发语言来打造一个充满

    2024年02月12日
    浏览(55)
  • Postman接口之间传递数据 实现接口关联

    在我们使用Postman进行接口测试的时候,经常会遇到一个接口的返回结果是另一个接口所需要的请求参数。 例如 :我们再测试时,一般需要先去调用登录接口,进行登录,并返回 token 相关信息,随后我们进行调用其它接口时可能会需要携带 token 来完成对应接口所实现的功能

    2023年04月21日
    浏览(46)
  • feign微服务之间传递请求头数据

    直接在微服务远程调用中获取请求头数据不能直接获取到.为什么? 看源码 默认情况下feign远程调用的时候不会传递请求头! 远程调用源码: 每一次远程请求的时候都创建了一个新的Request Template对象,在该对象中不包含之前的请求头数据 解决方案: 方案一:在feign接口上添加对应

    2024年02月06日
    浏览(45)
  • 前端和后端之间的CORS 跨域和解决办法

            跨源资源共享 (CORS,或通俗地译为跨域资源共享)是一种基于 HTTP 头的机制,该机制通过允许服务器标示除了它自己以外的其他源(域、协议或端口),使得浏览器允许这些源访问加载自己的资源。跨源资源共享还通过一种机制来检查服务器是否会允许要发送

    2024年01月23日
    浏览(54)
  • 网页设计前端作品(大一)HTML+CSS

    🌩️ 精彩专栏推荐👇🏻👇🏻👇🏻 💂 作者主页: 【进入主页—🚀获取更多源码】 🎓 web前端期末大作业: 【📚HTML5网页期末作业 (1000套) 】 🧡 程序员有趣的告白方式:【💌HTML七夕情人节表白网页制作 (110套) 】 📔网站布局方面 :计划采用目前主流的、能兼容各大主

    2024年02月09日
    浏览(51)
  • 前端 -- 基础 网页、HTML、 WEB标准 扫盲详解

    网页是构成网站的基本元素,它通常由 图片、链接、文字、声音、视频等元素组成。  通常我们看到的网页 ,常见以 .html 或  .htm  后缀结尾的文件, 因此俗称 HTML 文件  HTML 指的是 超文本标记语言,它是用来描述网页的一种语言  HTML 不是一种编程语言,而是一种 标记语

    2024年02月12日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包