如何找到带前缀的类并附加到元素?

时间:2013-10-31 09:43:39

标签: jquery class find

我在博客上有几篇文章,我需要在“p_”类中设置每个帖子的类别。

<article class="some-class p_category-name post">
    This is the category: <span id="category"></span>
</article>

这是我的代码,但不起作用(我在jQ中不太好):

var category = $("article.post").find("div[class^='p_'], div[class*=' p_']");
$("#category").text(category);

编辑:它有可能不是每个帖子都有一个“p_”类。

2 个答案:

答案 0 :(得分:2)

我认为你在寻找

$('article.post > span.category').text(function () {
    return $(this).parent().attr('class').match(/\bp_(.*?)[\s|$]/)[1]
})

演示:Fiddle

我更改了标记以使用类category作为范围,以便页面中可以有多篇文章

<article class="some-class p_category-name post">
    This is the category: <span class="category"></span>
</article>

答案 1 :(得分:1)

Sir Arun P Johny有一个很好的答案

他的回答只是一分钱,让它像OP一样工作。

fiddle

$('article.post > span.category').text(function () {
    return $.trim($(this).parent().attr('class').match(/\bp_(.*?)*\s\b/)[0]).replace('p_', '');
})