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