静态页面的值传递(三部曲)

yizhihongxing

静态页面的值传递,是指在没有使用后端语言的情况下,通过前端技术在多个页面之间传递数据,实现多页面数据共享的目的。其实现的主要步骤可以归纳为以下三步:

  1. 使用URL传递参数
    在页面A中使用URL传递参数,在链接中添加参数,并在页面B中通过解析URL获取传递的参数值,从而实现两个页面间的数据传递。

示例1: 在页面A中有一个按钮,点击后跳转至页面B,并将参数id值设置为3,代码如下:

<!-- 在页面A中设置按钮 -->
<button onclick="location.href='pageB.html?id=3'">跳转至页面B</button>

在页面B中解析URL参数,并使用JavaScript获取传递的参数值:

// 获取页面URL中的参数值
function getQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return decodeURIComponent(r[2]); return null;
}

// 获取id参数值并弹出提示框
var id = getQueryString("id");
alert("页面B中获取到id参数值为:" + id);

示例2: 在页面A中有一个输入框,输入完数据后跳转至页面B,并将输入框的值传递到页面B,代码如下:

<!-- 在页面A中设置输入框和按钮 -->
<input type="text" id="inputText">
<button onclick="location.href='pageB.html?name='+document.getElementById('inputText').value">跳转至页面B</button>

在页面B中解析URL参数,并使用JavaScript获取传递的参数值:

// 获取页面URL中的参数值
function getQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return decodeURIComponent(r[2]); return null;
}

// 获取name参数值并弹出提示框
var name = getQueryString("name");
alert("页面B中获取到的name参数值为:" + name);
  1. 使用localStorage存储数据
    在页面A中使用localStorage存储数据,在页面B中通过获取localStorage中的数据来获取页面A中的数据,实现数据共享。

示例1: 在页面A中有一个按钮,点击后将数据存储到localStorage中,代码如下:

// 在页面A中存储数据到localStorage中
localStorage.setItem("name", "tom");

在页面B中获取localStorage中的数据:

// 在页面B中获取localStorage中的数据
var name = localStorage.getItem("name");
alert("页面B中获取到的name值为:" + name);

示例2: 在页面A中有一个输入框,输入完数据后将数据存储到localStorage中,代码如下:

<!-- 在页面A中设置输入框和按钮 -->
<input type="text" id="inputText">
<button onclick="localStorage.setItem('name', document.getElementById('inputText').value)">存储到localStorage中</button>

在页面B中获取localStorage中的数据:

// 在页面B中获取localStorage中的数据
var name = localStorage.getItem("name");
alert("页面B中获取到的name值为:" + name);
  1. 使用cookie存储数据

在页面A中使用cookie存储数据,在页面B中通过获取cookie中的数据来获取页面A中的数据,实现数据共享。

示例1: 在页面A中有一个按钮,点击后将数据存储到cookie中,代码如下:

// 在页面A中存储数据到cookie中
document.cookie = "name=tom;path=/";

在页面B中获取cookie中的数据:

// 在页面B中获取cookie中的数据
function getCookie(name) {
    var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
    if (arr != null) {
        return unescape(arr[2]);
    }
    return null;
}

var name = getCookie("name");
alert("页面B中获取到的name值为:" + name);

示例2: 在页面A中有一个输入框,输入完数据后将数据存储到cookie中,代码如下:

<!-- 在页面A中设置输入框和按钮 -->
<input type="text" id="inputText">
<button onclick="document.cookie='name='+document.getElementById('inputText').value+';path=/'">存储到cookie中</button>

在页面B中获取cookie中的数据:

// 在页面B中获取cookie中的数据
function getCookie(name) {
    var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
    if (arr != null) {
        return unescape(arr[2]);
    }
    return null;
}

var name = getCookie("name");
alert("页面B中获取到的name值为:" + name);

以上就是静态页面的值传递(三部曲)的完整攻略及两个示例说明,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:静态页面的值传递(三部曲) - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • AngularJS使用ngMessages进行表单验证

    好的!那么在这里我将详细为您讲解如何使用AngularJS中的ngMessages模块进行表单验证。 什么是ngMessages? ngMessages是AngularJS模块中的一种指令,用于在UI层面进行表单验证。ngMessages会根据验证不通过时的条件,自动输出相应的错误消息。这样可以极大地方便用户填写表单,并且提示信息是根据具体情况显示的,让用户…

    JavaScript 2023年6月10日
    00
  • Javascript 实现复制(Copy)动作方法大全

    Javascript 实现复制(Copy)动作方法大全 在 Web 开发过程中,经常需要实现复制文本、复制图片等功能。本文将介绍 Javascript 实现复制操作的几种方法。 一、使用 document.execCommand() document.execCommand() 是一个常用的实现复制操作的方式。它可以执行不同的命令,包括复制命令,以实现文本、…

    JavaScript 2023年6月11日
    00
  • ES6解构赋值(数组,对象,函数)使用详解

    ES6 解构赋值详解 在ES6中,解构赋值是一种方便快捷地从数组、对象、函数等中提取数据的方式。解构赋值可以大大简化代码,使其更加具有可读性和易于维护。 数组的解构赋值 在ES6中,我们可以通过数组的解构赋值,方便快捷地将数组的值放入变量中。例如: // ES6数组解构赋值示例 let [x, y] = [1, 2]; console.log(x); // …

    JavaScript 2023年6月10日
    00
  • JS面向对象编程——ES6 中class的继承用法详解

    JS面向对象编程——ES6 中class的继承用法详解 1. ES6中的class ES6中引入了class关键字,使得JS中的面向对象编程更为易用和易读。class语法基于原型继承实现,更加直观和易于理解,在编写复杂程序时更为方便。 下面是一个class的示例代码: class Person { constructor(name, age) { this.…

    JavaScript 2023年5月27日
    00
  • Javascript Math round() 方法

    JavaScript中的Math.round()方法是用于将一个数四舍五入为最接近的整数的函数。以下是关于Math.round()方法的完整攻略,包含两个示例。 JavaScript Math对象的round方法 JavaScript的round()方法用于将一个数四舍五入为最接近的整数。下面是round()方法的语法: Math.round(x) 其中,x…

    JavaScript 2023年5月11日
    00
  • ASP的Error对象知识简析

    ASP的Error对象知识简析 在ASP开发中,如果出现错误,ASP会自动创建一个名为Error的对象,来存储出错信息。Error对象的相关属性和方法可以方便我们查找和处理错误信息。以下是对ASP Error对象的一些简单分析。 Error对象的属性 Error对象包含以下常用属性: ASPError.ASPCode 返回的是一个数字值,表示出错的标准代码。…

    JavaScript 2023年6月11日
    00
  • js中apply方法的使用详细解析

    JS中apply方法的使用详细解析 在JavaScript中,函数是一等公民,可以被当做参数传递和返回值。apply方法是函数对象的一个方法,它用来指定函数内部this对象的指向,同时也可以将一个数组或类数组对象展开到作为函数的参数列表。 语法 function.apply(thisArg,[argsArray]) function:待调用函数 thisAr…

    JavaScript 2023年6月10日
    00
  • JavaScript中的this例题实战总结详析

    下面我将为你详细讲解“JavaScript中的this例题实战总结详析”。 一、什么是this 在JavaScript中,this是一个关键字,通常用来指向当前对象。this的具体指向取决于函数被调用的方式。在不同的上下文环境中,this指向的对象不同,因此理解this的指向也非常重要。 具体来说,this有以下四种指向。 全局环境下的this当函数未被绑定…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部