如何使用javascript从url获取查询和哈希?
我有一个url如何使用javascript从url获取查询和哈希?,javascript,jquery,string,url,Javascript,Jquery,String,Url,我有一个urlhttp://local.evibe-dash.in/tickets/123?ref=avl-错误#10610 我想得到两个变量中的ref=avl error和10610 比如像这样的事情 var1 = 'avl-error'; var2 = 10610; 如何在javascript或jQuery中获取它,这在堆栈上被多次询问和回答 看看这些帖子: 基本上,你必须: 读取查询字符串:全部在“”之后 将带有“&”字符的字符串拆分为数组 使用“=”拆分所有数组元素 使用decod
http://local.evibe-dash.in/tickets/123?ref=avl-错误#10610
我想得到两个变量中的ref=avl error
和10610
比如像这样的事情
var1 = 'avl-error';
var2 = 10610;
如何在javascript或jQuery中获取它,这在堆栈上被多次询问和回答 看看这些帖子: 基本上,你必须:
var url=”http://local.evibe-dash.in/tickets/123?ref=avl-错误#10610”;
var query=url.match(/ref=([^#]+)/)[1];
var hash=url.match(/#([^#]+)/)[1];
日志(查询、哈希)代码>试试这个函数,你会得到一个带有查询字符串键的数组,它的值和散列后的字符串
var getUrlParameter = function getUrlParameter(sParam) {
var sPageURL = decodeURIComponent(window.location.search.substring(1)),
sURLVariables = sPageURL.split('&'),
sParameterName,
i;
for (i = 0; i < sURLVariables.length; i++) {
sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] === sParam) {
sParameterName[1] === undefined ? true : sParameterName[1];
}
if(window.location.href.indexOf("#") > -1) {
var url = window.location.href;
sParameterName[2] = url.match(/#([^#]+)/)[1];
}
}
return sParameterName;
};
var a = getUrlParameter('your-query-string-key');
console.log(a);
var getUrlParameter=函数getUrlParameter(sParam){
var sPageURL=decodeURIComponent(window.location.search.substring(1)),
sURLVariables=sPageURL.split(“&”),
sParameterName,
我
对于(i=0;i
您是否尝试过自己解决这个问题?显示您的代码。var t=“”;arr=t.split(“=”);res=arr[1]。拆分(“#”);警报(res[0]+“”+res[1]);我不知道怎么解决,所以我问@mdziekon。我在这里不是在开玩笑,写解决方案代码比写解决方案步骤和重复问题更容易。我想要“ref=avl error”,而不仅仅是查询的avl error。我怎样才能得到它。@Vikash使用var query=url.match(/ref=[^#]+/)[0]
来代替它。谢谢@Mohammad。解决了的。你能给我推荐一些好的正则表达式教程吗?我的问题已经解决了,但我不完全理解代码。@Vikash网上有很多教程和答案,你可以通过搜索找到它们。不过,您可以在工具中测试任何正则表达式代码。谢谢@mohammad。我真的很感谢你的帮助:)