HTML重定向参数传递与JavaScript获取方法
"这篇资源主要介绍了如何在HTML页面之间通过`redirect`进行参数传递以及如何在目标页面中使用JavaScript获取这些参数。" 在Web开发中,有时候我们需要在不同的HTML页面间传递参数,以便在新的页面中继续处理或展示数据。本资源提供了一种使用`redirect`方法和JavaScript来实现这一目的的方法。 首先,我们可以通过JavaScript的`window.open()`函数来打开一个新的页面,并在URL中附加参数。例如,在原页面中,我们可以这样写: ```javascript var sessionkey = 'your_session_key'; var totalamount = '123.45'; window.open('redirect.html?v=tillImport&sessionkey=' + sessionkey + '&totalamount=' + totalamount); ``` 这里的`window.open()`函数打开一个名为`redirect.html`的新页面,并将`v`, `sessionkey`和`totalamount`作为查询字符串传递。查询字符串是URL中`?`后面的部分,各参数之间由`&`分隔。 接下来,我们要在`redirect.html`页面中获取这些参数。这可以通过编写一个JavaScript函数来实现,例如: ```javascript // 获取URL中的所有参数 function getUrlParams() { var search = window.location.search; // 去掉问号 var tmpArray = search.substr(1, search.length).split("&"); var paramsArray = new Array; if (tmpArray != null) { for (var i = 0; i < tmpArray.length; i++) { var reg = /=|^==/; // 匹配等号 var set1 = tmpArray[i].replace(reg, '&'); var tmpStr2 = set1.split('&'); var array = new Array; array[tmpStr2[0]] = tmpStr2[1]; paramsArray.push(array); } } // 返回参数数组 return paramsArray; } // 获取特定参数的值 function getParamValue(name) { // var name = "totalamount"; // 可以指定要获取的参数名 var paramsArray = getUrlParams(); if (paramsArray != null) { for (var i = 0; i < paramsArray.length; i++) { for (var j in paramsArray[i]) { if (j == name) { alert(paramsArray[i][j]); // 显示参数值 $('#yickTotalMoney').text(paramsArray[i][j]); // 将参数值设置到页面元素中 // $('#tillTotalMoney').text(paramsArray[i][j]); // 另一个示例,设置到不同元素 return paramsArray[i][j]; // 返回参数值 } } } } return null; // 如果未找到参数,返回null } ``` 在`redirect.html`页面加载完成后,可以调用`getParamValue()`函数,传入想要获取的参数名(如`'totalamount'`),函数会从URL中解析并返回相应的值。这个值可以用于更新页面内容,如在页面的某个元素(如`'#yickTotalMoney'`)上显示。 总结来说,这个资源提供了在HTML页面之间使用`redirect`传递参数以及在目标页面通过JavaScript解析并获取这些参数的完整流程。这对于页面间的交互和数据传递非常实用,特别是在没有使用服务器端脚本或框架的情况下。
function getUrlParams() {
var search = window.location.search ;
// 写入数据字典
var tmparray = search.substr(1,search.length).split("&");
var paramsArray = new Array;
if( tmparray != null){
for(var i = 0;i<tmparray.length;i++)
{
var reg = /[=|^==]/; // 用=进行拆分,但不包括==
var set1 = tmparray[i].replace(reg,'&');
var tmpStr2 = set1.split('&');
var array = new Array ;
array[tmpStr2[0]] = tmpStr2[1] ;
paramsArray.push(array);
}
}
// 将参数数组进行返回
return paramsArray ;
}
// 根据参数名称获取参数值
function getParamValue(name) {
//var name = "totalamount";//根据参数名称截取url中参数值
var paramsArray = getUrlParams();
if(paramsArray != null){
for(var i = 0 ; i < paramsArray.length; i ++ ){
for(var j in paramsArray[i] ){
if( j == name ){
alert(paramsArray[i][j]);
下载后可阅读完整内容,剩余1页未读,立即下载
- 粉丝: 3
- 资源: 15
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++标准程序库:权威指南
- Java解惑:奇数判断误区与改进方法
- C++编程必读:20种设计模式详解与实战
- LM3S8962微控制器数据手册
- 51单片机C语言实战教程:从入门到精通
- Spring3.0权威指南:JavaEE6实战
- Win32多线程程序设计详解
- Lucene2.9.1开发全攻略:从环境配置到索引创建
- 内存虚拟硬盘技术:提升电脑速度的秘密武器
- Java操作数据库:保存与显示图片到数据库及页面
- ISO14001:2004环境管理体系要求详解
- ShopExV4.8二次开发详解
- 企业形象与产品推广一站式网站建设技术方案揭秘
- Shopex二次开发:触发器与控制器重定向技术详解
- FPGA开发实战指南:创新设计与进阶技巧
- ShopExV4.8二次开发入门:解决升级问题与功能扩展