如何在jquery中将变量附加到url?

Posted

技术标签:

【中文标题】如何在jquery中将变量附加到url?【英文标题】:How to append variable to url in jquery? 【发布时间】:2011-07-24 01:20:14 【问题描述】:

如何在 jquery 中将 variable/text 附加到属性 href

【问题讨论】:

【参考方案1】:

您可以使用.attr() 函数:

var foo = 'foo=bar';
$('a#foo').attr('href', function(index, attr) 
    return attr + '?' + foo;
);

或:

$('a#foo').attr('href', function() 
    return this.href + '?' + foo;
);

【讨论】:

这里没有考虑现有的url是什么 这将破坏已经有查询字符串的 url。看看@JohnC 的回答。【参考方案2】:

您需要检查是否已经存在查询字符串,然后再根据您要执行的其他示例将项目附加到 url。

var foo = 'foo=bar';
$('a').attr('href', function(index, attr) 
    return attr + (attr.indexOf('?') >=0 ? '&' : '?') + foo;
);

【讨论】:

【参考方案3】:
$('a').attr('href', function(i, v) 
    return v + 'text...';
);

【讨论】:

@Steffi jQuery 对象内元素的索引 - 在这种情况下无关紧要。【参考方案4】:

如果你反复使用它,试试 .attr() as:

html: <a id='foo' href='#'>I am your father,.. nooooo</a>

var myparams = 'myvar=myvalue';
var myurl = 'TypeThe_NetscapeURL';
$('a#foo').attr('href', function() 
    return myurl + '?' + myparams;
);

【讨论】:

几个 cmets:1.that 可以工作,但它实际上覆盖了未附加的值。要追加,首先获取值 $("#foo").attr('href') 然后追加任何你需要的东西。 2. 在上面的示例中,您不需要返回 url 的函数。简单的 myurl+'?'+myparams 应该这样做。这是获取 url 并附加到它的情况。将其设置为 href 只是一个副产品。查看***.com/questions/179713/… 设置hrefs

以上是关于如何在jquery中将变量附加到url?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Select2 中将参数附加到 ajax 请求?

在 Python 中将多个变量附加到列表中

如何将类添加到已经在 jQuery 中调用容器 div 的附加变量

如何在循环中将不同大小的列表附加到空熊猫数据框的每一列?

如何在 C# 函数中将 jquery 变量作为参数传递

如何在 Laravel 中将变量从视图传递到控制器而不使用 URL 或表单