我需要抓取子div的文本值。
<div id='first'>
<div id='first_child'>A</div>
<div id='second_child'>B</div>
<div id='third_child'>C</div>
</div>
我正在尝试获取值B。我目前正在尝试,但它不起作用。
var text_val = $('#first').next('#second_child').val();
发布于 2010-02-23 01:49:57
您希望使用children()
和text()
,而不是val()
。尽管您所选择的内容有一个id (并且id必须是唯一的),但是您也可以简单地根据id进行选择,而不涉及容器元素。
val()
方法只适用于输入元素、文本表示和选择--基本上是所有包含数据的表单元素。要获得容器的文本内容,您需要使用text()
(如果您还想要标记,则使用html()
)。
var text_val = $('#second_child').text(); //preferred
或
var text_val = $('#first').children('#second_child').text(); // yours, corrected
发布于 2010-02-23 02:18:04
您可以简单地:
var text_val = $('#second_child').text();
正如前面的答案所指出的那样。但是,由于你“需要获取一个子div的文本值”,我假设这个子div id可能并不总是可用的。您可以尝试执行以下操作:
var text_val = $('#first').children().eq(1).text();
其中1是子div的索引(因为它的计数从零开始)
发布于 2010-02-23 01:51:19
试试这个。
var text_val = $('#first > #second_child').text();
https://stackoverflow.com/questions/2312876
复制相似问题