0

我将用户名的值传递到查询字符串中,但我无法在 jquery 中获取名称的值。

这是我的网址

https://dev.hudpowerbid.com/front-end-pm/?fepaction=newmessageShami%20Kothari

我只想得到 Shami Kothari

这就是我将名称与查询字符串附加的方式

var name= jQuery(this).parent().siblings(".htb200").html();
window.location.href ='https://example.com/front-end-pm/?fepaction=newmessage'+name;

这就是我如何用 url 附加名称现在我想在 jquery 中得到它

这就是我获得价值的方式。

function getUrlVars() {
var url = 'https://example.com/front-end-pm/?fepaction=newmessage'+name;
var vars = {};
var hashes = url.split("?")[1];
var hash = hashes.split('&');

for (var i = 0; i < hash.length; i++) {
params=hash[i].split("=");
vars[params[0]] = params[1];
}
return vars;
}
4

1 回答 1

1

您的问题是您没有为查询字符串中的值“Shami Kothari”分配键“名称”,而是当前只是将其附加到另一个值的末尾。要将键“名称”添加到查询字符串中,您可以使用&指定另一个键值对:

window.location.href ='https://example.com/front-end-pm/?fepaction=newmessage&name='+name;

这样,当您尝试获取名称时,它将查找键“名称”并检索值,即"Shami Kothari"

请参阅下面的工作示例:

function getUrlVars() {
  var name = "Shami Kothari";
  var url = 'https://example.com/front-end-pm/?fepaction=newmessage&name=' + name;
  var vars = {};
  var hashes = url.split("?")[1];
  var hash = hashes.split('&');

  for (var i = 0; i < hash.length; i++) {
    params = hash[i].split("=");
    vars[params[0]] = params[1];
  }
  return vars;
}

console.log(getUrlVars());

于 2019-03-10T14:20:25.780 回答