我有3个具有不同结构的href,并且它们都具有相同的硬编码参数(在此示例中值= somevalue-abc)。
如何更新链接并使用新值覆盖值?
的jQuery
$(document).ready(function () {
$('a').click(function () {
var $newValue = 'newvalue';
//here a function that overwrites the parameter 'somevalue-abc' with $newValue
});
});
HTML
<a class="demo" href="http://www.mydomain.com/page.aspx?demo&value=somevalue-abc">link 1</a>
<a class="real" href="http://www.mydomain.com/?value=somevalue-abc#go=yes">link 2</a>
<a class="outgoing" href="http://www.mydomain.com/page.aspx?value=somevalue-abc">link 3</a>
答案 0 :(得分:8)
尝试:
$(document).ready(function () {
$('a').click(function () {
var $newValue = 'newvalue';
$(this).attr('href',$(this).attr('href').replace('somevalue-abc', $newValue));
});
});
答案 1 :(得分:5)
$('a').click(function() {
var newValue = 'newvalue'; // pls don't use a $ on variables that aren't jquery objects
var src = $(this).attr('href');
$(this).attr('href', src.replace(/somevalue\-abc/, newvalue));
});