使用Javascript从Url获​​取GET变量时返回Null值

时间:2018-04-20 10:42:53

标签: javascript

我试图从URL获取变量,但它只是继续返回null。我尝试过这么多方法并阅读多个教程,但似乎没有任何工作。以下是网址。

http://example.com/page2.html?user%20=admin 

和我用来获取变量的javascript代码

var getQueryString = function ( field, url ) {
var href = url ? url : window.location.href;
var reg = new RegExp( '[?&]' + field + '=([^&#]*)', 'i' );
var string = reg.exec(href);
return string ? string[1] : null;
};

var user = getQueryString('user'); 

document.write (user); 

2 个答案:

答案 0 :(得分:0)

试试这个让querystring = window.location.search.substring(1);

答案 1 :(得分:0)

由于网址中的%20,您的正则表达式不匹配。在应用正则表达式检查之前,请先尝试删除%20

var getQueryString = function (field, url) {
    var href = url ? url : window.location.href;

    // get rid of '%20' in url
    href = href.replace(/%20/g, '');

    var reg = new RegExp( '[?&]' + field + '=([^&#]*)', 'i' );
    var string = reg.exec(href);
    return string ? string[1] : null;
};


var my_url = 'http://example.com/page2.html?user%20=admin';
var user = getQueryString('user', my_url);

document.write (user);