`
wezly
  • 浏览: 490503 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

javascript静态页面传值的三种方法

阅读更多

关键字: javascript静态页面传值的三种方法

javascript静态页面传值的三种方法2008-06-08 10:31

一:JavaScript静态页面值传递之URL篇
  能过URL进行传值.把要传递的信息接在URL上.
Post.htm
复制内容到剪贴板代码:

<input type="text" name="username">
<input type="text" name="sex">
<input type="button" value="Post">
<script language="javascript" >
function Post()
{
  //单个值 Read.htm?username=baobao;
  //多全值 Read.htm?username=baobao&sex=male;
  url = "Read.htm?username="+escape(document.all.username.value);
  url += "&sex=" + escape(document.all.sex.value);
  location.href=url;
}
</script>
Read.htm
复制内容到剪贴板代码:

<script language="javascript" >
/*
*--------------- Read.htm -----------------
* Request[key]
* 功能:实现ASP的取得URL字符串,Request("AAA")
* 参数:key,字符串.
* 实例:alert(Request["AAA"])
*--------------- Request.htm -----------------
*/
var url=location.search;
var Request = new Object();
if(url.indexOf("?")!=-1)
{
  var str = url.substr(1) //去掉?号
  strs = str.split("&");
  for(var i=0;i<strs.length;i++)
  {
     Request[strs[i ].split("=")[0]]=unescape(strs[ i].split("=")[1]);
  }
}
alert(Request["username"])
alert(Request["sex"])
</script><script language="JavaScript">
<!--
function Request(strName)
{
var strHref = "www.abc.com/index.htm?a=1&b=1&c=测试测试";
var intPos = strHref.indexOf("?");
var strRight = strHref.substr(intPos + 1);
var arrTmp = strRight.split("&");
for(var i = 0; i < arrTmp.length; i++)
{
var arrTemp = arrTmp[i ].split("=");
if(arrTemp[0].toUpperCase() == strName.toUpperCase()) return arrTemp[1];
}
return "";
}
alert(Request("a"));
alert(Request("b"));
alert(Request("c"));
//-->
</script>
<script>
String.prototype.getQuery = function(name)
{
  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
  var r = this.substr(this.indexOf("?")+1).match(reg);
  if (r!=null) return unescape(r[2]); return null;
}
var str ="www.abc.com/index.htm?a=1&b=1&c=测试测试";
alert(str.getQuery("a"));
alert(str.getQuery("b"));
alert(str.getQuery("c"));
</script>
优点:取值方便.可以跨域.
缺点:值长度有限制

二:JavaScript静态页面值传递之Cookie篇
  Cookie是浏览器存储少量命名数据.
  它与某个特定的网页或网站关联在一起.
  Cookie用来给浏览器提供内存,
  以便脚本和服务器程序可以在一个页面中使用另一个页面的输入数据.
Post.htm
复制内容到剪贴板代码:

<input type="text" name="txt1">
<input type="button" value="Post">
<script language="javascript" >
function setCookie(name,value)
{
/*
*--------------- setCookie(name,value) -----------------
* setCookie(name,value)
* 功能:设置得变量name的值
* 参数:name,字符串;value,字符串.
* 实例:setCookie('username','baobao')
*--------------- setCookie(name,value) -----------------
*/
  var Days = 30; //此 cookie 将被保存 30 天
  var exp = new Date();
  exp.setTime(exp.getTime() + Days*24*60*60*1000);
  document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
  location.href = "Read.htm"; //接收页面.
}
</script>
Read.htm
复制内容到剪贴板代码:

<script language="javascript" >
function getCookie(name)
{
/*
*--------------- getCookie(name) -----------------
* getCookie(name)
* 功能:取得变量name的值
* 参数:name,字符串.
* 实例:alert(getCookie("baobao"));
*--------------- getCookie(name) -----------------
*/
  var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
  if(arr !=null) return unescape(arr[2]); return null;
}
alert(getCookie("baobao"));
</script>
优点:可以在同源内的任意网页内访问.生命期可以设置.
缺点:值长度有限制.

三:JavaScript静态页面值传递之Window.open篇
  这两窗口之间存在着关系.父窗口parent.htm打开子窗口son.htm
  子窗口可以通过window.opener指向父窗口.这样可以访问父窗口的对象.
Post.htm
复制内容到剪贴板代码:

<input type=text name=maintext>
<input type=button value="Open">
Read.htm
<script language="javascript" >
//window.open打开的窗口.
//利用opener指向父窗口.
var parentText = window.opener.document.all.maintext.value;
alert(parentText);
</script>
优点:取值方便.只要window.opener指向父窗口,就可以访问所有对象.不仅可以访问值,还可以访问父窗口的方法.值长度无限制.
缺点:两窗口要存在着关系.就是利用window.open打开的窗口.不能跨域。

分享到:
评论

相关推荐

    javascript静态页面传值的三种方法分享

    本文将详细探讨JavaScript静态页面传值的三种方法,并对其优缺点进行分析,供开发者参考使用。 1. URL传值 URL传值是通过URL的查询字符串(Query String)将数据从一个页面传递到另一个页面。通常,我们会看到URL...

    静态页面的传值

    在提供的"测试静态页面传值"压缩包中,可能包含了以上提到的一些方法的示例代码。通过学习和理解这些示例,你可以掌握静态页面间传值的基本技巧,并根据实际项目需求选择合适的方法。请注意,为了保障用户隐私和安全...

    静态页面间传值实例静态页面间传值实例

    在网页开发中,静态页面间传值是一种常见的需求,特别是在多页应用中,用户可能需要在不同的HTML页面之间传递信息,比如导航、购物车状态等。本实例将深入探讨如何在不依赖服务器端处理或者使用JavaScript框架的情况...

    静态页面html中跳转传值的JS处理技巧

    在静态页面HTML中实现页面跳转的同时传递参数,是一种常见的Web开发需求。本文将详细讲解如何利用JavaScript处理URL中的查询参数,以及如何在目标页面中接收这些参数。通过实例演示,我们会学习到如何使用JavaScript...

    静态页跳转传值、静态页跳转传值

    静态页面通常指的是不与服务器交互的纯HTML文件,但有时我们需要在这些页面之间传递信息,这就涉及到了静态页跳转传值的技术。下面我们将详细探讨这个主题。 1. **URL参数传递**: - 最常见的方式是通过URL查询...

    纯html静态页传值.

    以上就是纯HTML页面间传值的常见方法,根据实际需求和兼容性考虑选择合适的技术。在实际开发中,常常结合使用多种方法,以实现更灵活的数据管理。在处理敏感信息时,一定要注意数据的安全性和用户隐私。

    静态画面之间传值的共通

    总结来说,静态页面间的传值涉及到各种浏览器提供的API和技术,选择哪种方法取决于数据量、安全性、兼容性以及特定场景的需求。开发者应根据实际情况权衡这些因素,选择最适合的方法。在实际项目中,结合使用多种...

    静态页面之间传值,内含jquery.params.js

    因此,要在静态页面间传递数据,通常会借助URL参数、cookies、本地存储(如localStorage)或者通过JavaScript来实现。 在jQuery中,`.param()`方法主要用于序列化表单数据,将其转换为URL查询字符串格式,这对于...

    静态页面html中跳转传值的JS处理技巧_.docx

    本文介绍了一种在静态页面HTML中实现跳转传值的方法,通过JavaScript解析URL中的参数并提供了方便的方法来获取这些参数。这种方法不仅简单易行,而且具有较高的灵活性,适用于多种应用场景。希望本文能够帮助大家更...

    页面间传值

    在IT行业中,页面间传值是一项基础且重要的技术,尤其在Web开发中不可或缺。它涉及到如何在不同的网页之间传递数据,...在学习资料中,"页面传值.txt"可能包含更详细的实例和代码示例,进一步阐述了这些方法的应用。

    C# 跨页传值

    根据提供的文件信息,本文将详细解析C#中的跨页传值技术,并重点介绍几种常见的实现方式,包括利用JavaScript、GET请求、Application对象以及Session对象等方法。这些技术在Web开发中非常实用,尤其是在ASP.NET中。 ...

    静态页面的购物车功能

    在构建静态页面的购物车功能时,我们主要关注以下几个核心知识点: 1. **登录系统**:在用户能够使用购物车功能之前,通常需要一个登录系统来验证用户的身份。登录系统通常包括用户名和密码输入框,以及提交按钮。...

    asp.net的ajax传值

    ASP.NET 是微软开发的一种用于构建Web应用程序的框架,它提供了丰富的功能和强大的工具来创建动态、交互式的网页。Ajax(Asynchronous JavaScript and XML)技术则是Web开发中的一个重要组成部分,允许在不刷新整个...

    静态gb2312编码在项目传值出现中文乱码现象

    这样可以解决页面显示样式的问题,但同时引入了新的问题:在进行页面传值时,由于整个系统的编码已经设定为GB2312,那么在JavaScript中使用encodeURIComponent对中文字符进行编码时,依然会产生乱码。 要解决传值...

    js获取url传值的方法

    本文实例讲述了js获取url传值的方法。分享给大家供大家参考,具体如下: js获取url参数值: index.htm?参数1=数值1&参数2=数值2&参数3=数据3&参数4=数值4&…… 静态html文件js读取url参数 根据获取html的参数值控制...

    jquery ajax用json传值实例asp.net

    1. **JSON(JavaScript Object Notation)**:JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在jQuery中,我们通常使用JSON来传输数据,因为它能很好地与JavaScript对象结构匹配。 ...

    JavaScript常见面试题共41页.pdf.zip

    12. **TypeScript**:JavaScript的超集,引入了静态类型系统,提高了代码的可维护性和工具链支持。 13. **框架与库**:如React、Vue、Angular等的使用,组件化开发,虚拟DOM的理解,状态管理(如Redux、Vuex)。 ...

    javaWEB项目答辩.docx

    JSP 项目答辩的多个方面,包括 B/S 和 C/S 结构、HTTP 状态码、传值方式、Servlet 生命周期、页面跳转、POST 提交中文处理、JSP 页面元素构成、JSP 页面常用的内置对象、Session 对象的作用和常用方法、MVC 三层结构...

Global site tag (gtag.js) - Google Analytics