我刚开始使用javascript并尝试执行以下操作:
我的html doc包含div和span元素,如下所示。
我想创建一个变量,它将为特定的div子元素存储my-new-id
的值
我必须继续提供的唯一信息是,我始终知道text
的范围是什么,因为它基于用户名。
因此,我如何获得my-new-id
的{{1}}值?
我已经找到了如何使用document.getElementById方法导航到正确的div elemenet。然后我尝试使用jquery选择器,例如user1
,但是卡住了。
非常感谢提前。
:contains
答案 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');
请注意,属性名称已被删除破折号和驼峰状。