繁体   English   中英

拆分html标签的值

[英]Split value of a html tag

我想从“a”html标签中拆分一些内容。 我开始使用jquery。 我的代码是这样的,但它不起作用:

$("a.uribb").each(function() {
    var id = $(this).attr("href").replace("http://dereferer.org/?", "");
    $(this).append(+id+);
});

HTML标记是这样的:

<a href="http://dereferer.org/?http://example.com/" target="_blank" class="uribb">
    http://example.com/
</a>

我想拆分http://dereferer.org/? 部分并留在那里。 我怎么能这样做?

如果要替换内容,请尝试使用.text()而不是.append() 此外,在id之前和之后不需要+

你可以试试这个:

var id = $(this).attr("href").replace("http://dereferer.org/?", "");
$(this).text(id);

更新

再次阅读这个问题,我不确定你是否想要替换a -tag的内容或href的值。 如果是后者,试试这个:

var id = $(this).attr("href").replace("http://dereferer.org/?", "");
$(this).attr("href", id);

注意

从jQuery 1.6开始,最好使用.prop()而不是.attr()

那个怎么样?

$("a.uribb").attr("href", function(i, val) {
    return val.substring(val.indexOf("?") + 1);
});​

演示: http //jsfiddle.net/zQdL4/


这很有趣,但对于你的标记,以下代码也应该工作:)

$("a.uribb").attr("href", function() {
    return $.trim(this.innerHTML);
});​

对,所以你想要的就是这个。

<a href="http://example.com/">...

尝试这个。

$("a.uribb").each(function() {
    var indirect_url = $(this).prop("href");
    var direct_url = indirect_url.replace("http://dereferer.org/?", "")
    $(this).prop('href', direct_url);
});

你当然可以用更少的线来做这件事,但这样很明显发生了什么。 具体来说, replace() 不会修改其所操作的字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM