Html Can';无法从查询字符串cordova windows phone获取值
如何从查询字符串index.html#id=1&name=Lionel获取值 下面的代码在设置时工作?而是在上面的链接中 例如:Html Can';无法从查询字符串cordova windows phone获取值,html,cordova,phonegap-plugins,Html,Cordova,Phonegap Plugins,如何从查询字符串index.html#id=1&name=Lionel获取值 下面的代码在设置时工作?而是在上面的链接中 例如: function getParameterByName(name) { name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
function getParameterByName(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}
你的问题有一个简单的答案。假设url是
www.awsomepage.dev?foo=bar&baz#foobar
命令location.search
将返回?foo=bar&baz
,因为这是搜索部分。要访问标签数据,必须使用location.hash
,它将返回#foobar
要使您的代码与#
一起工作,您应该替换
var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
results = regex.exec(location.search);
借
我改变了什么:
首先:在正则表达式中检查?
和&
作为开始。显然,您必须将其更改为#
和&
第二:将location.search
更改为location.hash
,因为您的目标是哈希
希望有帮助。为了进一步阅读,我想在这里看一下:
var regex = new RegExp("[\\#&]" + name + "=([^&#]*)"),
results = regex.exec(location.hash);