Jquery - 使用find()获取元素的ID

时间:2010-09-05 11:35:10

标签: jquery

如何使用find方法获取元素的id?

HTML

<div id="d1" class="line1">blib blab blub </div>

JS

$(function() {

      // hit_id = $(".line1").find("blab").attr('id');
         hit_id = $(".line1").match(/blab/).attr('id');    

         $('body').append(' - '+hit_id+' - ');
});

工作示例 http://www.jsfiddle.net/V9Euk/496/

提前致谢!

彼得

2 个答案:

答案 0 :(得分:3)

您可以使用:contains()进行文字匹配,然后使用.attr('id')就像您拥有ID一样,如下所示:

 var hit_id = $(".line1:contains('blab')").attr('id');    

You can see the updated/working version here

.match()不是jQuery函数,除非您添加一些插件(请参阅示例页面上的控制台以获取错误:Object...has no method 'match')。 :contains()会将元素集减少为包含您将字符串作为字符串传递给:contains()的文本的元素集,这似乎是您所追求的。

答案 1 :(得分:1)

var hit_id = $('.line1').filter(function() {
    return $(this).text().match(/blab/);
}).attr('id');