如何使用javascript查找特定的子元素

时间:2013-01-07 13:48:11

标签: javascript html jquery-selectors

我刚开始使用javascript并尝试执行以下操作:
我的html doc包含div和span元素,如下所示。 我想创建一个变量,它将为特定的div子元素存储my-new-id的值 我必须继续提供的唯一信息是,我始终知道text的范围是什么,因为它基于用户名。 因此,我如何获得my-new-id的{​​{1}}值?

我已经找到了如何使用document.getElementById方法导航到正确的div elemenet。然后我尝试使用jquery选择器,例如user1,但是卡住了。

非常感谢提前。

:contains

1 个答案:

答案 0 :(得分:2)

使用jQuery:

var val = $('span:contains("user1")').attr('my-new-id');

还有几点:

  • 请勿使用以数字开头的ID。 HTML4规范中不允许这样做,并且可能会在某些浏览器中导致意外行为。相反,在ID前面添加一个字母字符串,如下所示:

    <div id="container1">
        ...
    </div>
    
  • 我建议您使用data-*属性,而不是组成不存在的属性。您可以制作data这样的属性:

    <span data-new-id="x">user1</span>
    

    然后您可以使用以下方法检索此值:

    $('span:contains("user1")').data('newId');
    

    请注意,属性名称已被删除破折号和驼峰状。