使用jquery / javascript替换或从href中删除字符串

时间:2012-05-18 12:40:39

标签: jquery replace href

我正在尝试使用replace()从我的html页面上的超链接中删除特定的字符串。我发现了一些帖子,展示了如何做到这一点,他们都使用replace()来实现这一目标。它适用于IE,但在FireFox中它不起作用。这是我要替换(删除)的字符串代码。

在我的html页面上,我有到pl脚本附加的外部网站的链接,因此可以对它们进行处理。我想从超链接中删除此脚本引用。

示例:<a href="/cgi-bin/redir.pl?http://www.google.com/" target="_new">Google Search</a>

我希望它是:<a href="http://www.google.com/" target="_new">Google Search</a>

$("a[href*='/cgi-bin/redir.pl?']").attr('href', function() { return this.replace('/cgi-bin/redir.pl?',''); });

此代码适用于IE,但它在FireFox中不起作用。我尝试过这个代码的许多不同变体,但我没有成功。我希望有人能给我提示如何使它在FireFox中也能正常工作。

1 个答案:

答案 0 :(得分:0)

尝试类似

的内容
$('a[href^="/cgi-bin/redir.pl?"]').each(function() {
    this.href = this.href.replace(/^\/cgi-bin\/redir\.pl\?/, '');

    // or $(this).attr('href', this.href.replace(/^\/cgi-bin\/redir\.pl\?/, ''));
    // or this.href = this.href.substring(18);
});