更新所有href属性

时间:2016-05-05 07:43:12

标签: jquery html string find href

我有一个名为avar a = "test")的变量,我需要将其放在包含单词{的页面上所有href元素的所有a属性中{1}}。所有ONE值都不相同,但始终包含单词href

例如我想改变这个:

ONE

对此:

href="/page2.php?how=GO-ONE-24-title-stay"

4 个答案:

答案 0 :(得分:2)

这样的东西?

$('a[href*="ONE"]').each(function(){
    $(this).attr('href', $(this).attr('href').replace('ONE', 'ONE-test'));
});

你的例子有点误导,所以如果你的意思是测试值是变量,那么你需要这样的东西:

var add = 'test';

$('a[href*="ONE"]').each(function(){
    var currentHref = $(this).attr('href');
    $(this).attr('href', currentHref.replace('ONE', 'ONE-' + add));
});

答案 1 :(得分:2)

您可以这样做:

set CATALINA_OPTS= -Xmx2g

这是一个有效的example

答案 2 :(得分:2)

您可以通过为attr()方法提供函数来实现此目的;不需要显式循环。试试这个:

var a = 'test';
$('a[href*="-ONE-"]').attr('href', function(i, href) {
    return href.replace('-ONE-', '-ONE-' + a + '-';
});

请注意,初始jQuery选择器将要修改的元素限制为仅在ONE-属性中包含href的元素。

答案 3 :(得分:1)

试试这个..

$(document).ready(function(){
var test = "test";
$("a").each(function() {
  var href_val = $(this).prop("href");
  if(href_val.indexOf("ONE") >= 0){
  href_val = href_val.replace("ONE", "ONE-"+test);
  $(this).prop("href", href_val);
  }
});
});