文档章节

用javascript实现html页面之间的参数传递的四种方法

W
 Wongjack
发布于 2014/06/10 15:04
字数 286
阅读 5
收藏 0

我们知道,在服务器端asp,jsp等程序可以接受html页面上的form传来的参数。那么,可不可以传递参数给html页面呢。可以。
原理:通过window.location.href中的分割符获得各个参数
方法一:


/*
 *函数功能:从href获得参数
 *sHref:   http://www.cscenter.com.cn/arg.htm?arg1=d&arg2=re
 *sArgName:arg1, arg2
 *return:  the value of arg. d, re
 
*/
function GetArgsFromHref(sHref, sArgName)
{
    
var args  = sHref.split("?"
);
    
var retval = ""
;
    
    
if(args[0== sHref) /*参数为空*/

    {
         
return retval; /*无需做任何处理*/
    }  
    
var str = args[1];
    args 
= str.split("&"
);
    
for(var i = 0; i < args.length; i ++
)
    {
        str 
=
 args[i];
        
var arg = str.split("="
);
        
if(arg.length <= 1continue
;
        
if(arg[0== sArgName) retval = arg[1
]; 
    }
    
return
 retval;
}

方法二:

function getvalue(name)
{
var str=
window.location.search;
if (str.indexOf(name)!=-1)
{
var pos_start=str.indexOf(name)+name.length+1
;
var pos_end=str.indexOf("&"
,pos_start);
if (pos_end==-1
)
{
return
 str.substring(pos_start);
}
else

{
return str.substring(pos_start,pos_end)
}
}
else

{
return "没有这个name值";
}
}
alert(getvalue(name));

方法三:

Request = {
QueryString : 
function
(item){
var svalue = location.search.match(new RegExp("[\?\&]" + item + "=([^\&]*)(\&?)","i"
));
return svalue ? svalue[1
] : svalue;
}
}
alert(Request.QueryString(
"id"
));

方法四:

        var url=location.search;
        
var Request = new
 Object();
        
if(url.indexOf("?")!=-1
)
        {
            
var str = url.substr(1);  //去掉?号

            strs = str.toLowerCase();
            strs 
= strs.split("&"
);
            
for(var i=0;i<strs.length;i++
)
            {
                Request[strs[i].split(
"=")[0]]=unescape(strs[i].split("=")[1
]);
            }
        }


        
var mapWidth = Request["w"
];
        
var mapHeight = Request["h"];

© 著作权归作者所有

共有 人打赏支持
W
粉丝 0
博文 10
码字总数 12085
作品 0
广州
Spring Boot入门(6)前端接受后台传参

基础知识   利用Spring Boot来制作Web应用,就必定会涉及到前端与后台之间互相传递参数。在Spring Boot的MVC模型中,如果采用Thymeleaf来渲染视图,则前端页面怎么才能获得后台运行传递的参...

jclian91
04/12
0
0
React Native iOS混合开发实战教程

在做RN开发的时候通常离不了JS 和Native之间的通信,比如:初始化RN时Native向JS传递数据,JS调用Native的相册选择图片,JS调用Native的模块进行一些复杂的计算,Native将一些数据(GPS信息,...

JiaPengHui
09/15
0
0
客户端的js js脚本的引入 js的解析过程

web浏览器中的JavaScript web浏览器中的js通常称为客户端的JavaScript 客户端 JavaScript window对象是所有客户端JavaScript特性和api的主要接入点。 即,表示web浏览器一个窗口或窗体。使用...

小小____
08/03
0
0
JS实现HTML静态页传值的方法

JS实现HTML静态页传值的方法 作者:前端开发-武方博 发布:2012-10-29 分类:javascript 阅读:8,735次 此处使用JS方式实现静态页之间值传递,其实很简单,废话不多说,见代码,先看index.h...

thinkyoung
2015/06/01
0
0
Android WebView与JS交互入门

首先在Anndroid代码中对WebView进行初始化 html的代码如下 WebView与js交互主要分四种情况 1、Android 调用HTML中的javascript脚本 2、HTML中的javascript脚本调用Android本地代码 3、Andro...

胡东月
2017/11/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

20180920 rzsz传输文件、用户和用户组相关配置文件与管理

利用rz、sz实现Linux与Windows互传文件 [root@centos01 ~]# yum install -y lrzsz # 安装工具sz test.txt # 弹出对话框,传递到选择的路径下rz # 回车后,会从对话框中选择对应的文件传递...

野雪球
今天
2
0
OSChina 周四乱弹 —— 毒蛇当辣条

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ 达尔文:分享花澤香菜/前野智昭/小野大輔/井上喜久子的单曲《ミッション! 健?康?第?イチ》 《ミッション! 健?康?第?イチ》- 花澤香菜/前野智...

小小编辑
今天
8
3
java -jar运行内存设置

java -Xms64m #JVM启动时的初始堆大小 -Xmx128m #最大堆大小 -Xmn64m #年轻代的大小,其余的空间是老年代 -XX:MaxMetaspaceSize=128m # -XX:CompressedClassSpaceSize=6...

李玉长
今天
4
0
Spring | 手把手教你SSM最优雅的整合方式

HEY 本节主要内容为:基于Spring从0到1搭建一个web工程,适合初学者,Java初级开发者。欢迎与我交流。 MODULE 新建一个Maven工程。 不论你是什么工具,选这个就可以了,然后next,直至finis...

冯文议
今天
2
0
RxJS的另外四种实现方式(四)——性能最高的库(续)

接上一篇RxJS的另外四种实现方式(三)——性能最高的库 上一篇文章我展示了这个最高性能库的实现方法。下面我介绍一下这个性能提升的秘密。 首先,为了弄清楚Most库究竟为何如此快,我必须借...

一个灰
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部