Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Javascript从Url获取GET变量时返回Null值_Javascript - Fatal编程技术网

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

使用Javascript从Url获取GET变量时返回Null值,javascript,Javascript,我试图从URL获取一个变量,但它总是返回null。我尝试了很多方法,阅读了很多教程,但似乎没有任何效果。下面是url 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( '[?&

我试图从URL获取一个变量,但它总是返回null。我尝试了很多方法,阅读了很多教程,但似乎没有任何效果。下面是url

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); 

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

您的正则表达式不匹配,因为url中有
%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); 

该URL中没有名为
user
的参数。可能重复的可能重复的非常感谢