假设我有
<div id="1">
<span id="name">Josh</span>
<div id="quote">Run</div>
</div>
<div id="2">
<span id="name">Mark</span>
<div id="quote">Run</div>
</div>
如何从第一个div中选择span标记之间的名称?
$("#quote").click(function(){
var name = $('#name').html();
});
答案 0 :(得分:6)
首先,id
必须在html文档中是唯一的。因此,理想情况下,您需要将div中的id更改为class
。其次,id
不能以数字开头,因此您需要将div ID更改为以字母或下划线开头。
考虑到这一点,考虑到这一点:
<div id="one">
<span class="name">Josh</span>
<div class="quote">Run</div>
</div>
<div id="two">
<span class="name">Mark</span>
<div class="quote">Run</div>
</div>
你会找:
$("#quote").click(function(){
var name = $('#one .name').html();
});
答案 1 :(得分:1)
id
在页面中应该是唯一的。您应该将name
和quote
ID更改为一个类,该类不必是唯一的。
<div id="1">
<span class="name">Josh</span>
<div class="quote">Run</div>
</div>
<div id="2">
<span class="name">Mark</span>
<div class="quote">Run</div>
</div>
然后您可以通过以下方式选择:
$('#1 .name')
您还应该记住,id
不应该以数字开头(HTML5除外)
答案 2 :(得分:0)
在#name之前添加#1将选择第一个div
$("#quote").click(function(){
var name = $('#1 #name').html();
});
答案 3 :(得分:0)
var name = $("#1 span").html()
或
var name = $('#1 #name').html();
答案 4 :(得分:0)
这应该适合你:
$("#1 span").text();
但是您的HTML存在一些问题。您的HTML中不应包含任何重复的ID,它们必须是唯一的。 ID也不应以数字开头。
您可以在此处查看小提琴:http://jsfiddle.net/
答案 5 :(得分:0)
您也可以通过这种方式选择div#1的第一个span标记内容:
var name = $("#1 span:first").html();