javascript - 纯前端,判断进入A页面时链接中有没有传进一个参数?
阿神
阿神 2017-04-10 15:12:31
[JavaScript讨论组]

从B页面进入A页面,链接是A.html。
从c页面进入A页面,链接是A.html?ss=da。

在A页面打开时,如何判断有没有参数,并根据不同链接执行不同方法

阿神
阿神

闭关修行中......

全部回复(6)
天蓬老师

希望对你有帮助

/*
 * 获取特定字段的查询字符串
 * @param {String} name: 查询字符串的字段名
 */
function getQuerySrting(name) {
    var search = location.search.substring(1).split('&');
    var value = false;
    for (var i = 0;i < search.length;i++) {
        var keyValue = search[i].split('=');
        if (keyValue[0] == name) {
            value = keyValue[1];
        }
    }
    return value;
}
PHP中文网

用js拆location.href,具体代码本站应该有相关示例,自己找找

PHP中文网
javascriptvar 
o=location.search.substr(1).split('&'),
i=o.length,
_o,
GET={};

while(i--){
    _o=o[i].split('=');
    GET[_o.shift()]=decodeURIComponent(_o.join('='));
}

if(GET['ss']=='da'){
    /* 传入参数有 ss 并且等于 'da' */
}

呃...
再加上几个例子

上面运行完之后

再运行

javascriptGET.ss 

或者

javascriptGET['ss'] 

就会返回 'dd'

你也可以直接用它进行判断

javascriptif(GET.ss=='dd'){
    alert('GET 参数 ss 值等于 dd');
} 
PHPz

Orz 那个不是 window.location.search 吗?

附:用 window.location.hash 还可以促发 hashShange 事件

伊谢尔伦

我是php的,这种工作也用前端做啊?,通常跳转页面不都是后台进入控制器通过if判断指定魔板么?如果有参数进入什么模板,如果没参数进入什么模板?我不是来回答问题的哈,我是来学知识的袄,通常js代码不都是等待bom活着dom加载完成才执行么?这一瞬间页面已经出来了袄,这个页面给后端做不是手拿把掐么?难不成你写的是纯静态页面啊?求知识袄

巴扎黑
javascriptfunction searchQuery(query) {
    return decodeURI(window.location.search.replace(new RegExp('^(?:.*[&\\?]' + encodeURI(query).replace(/[\.\+\*]/g, '\\$&') + '(?:\\=([^&]*))?)?.*$', 'i'), '$1'));
}

如果有该参数则返回参数值,如果没有则返回空字符串

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号