如何处理div中的子元素,由其索引寻址

时间:2012-02-15 09:16:27

标签: jquery

通过索引来解决元素是明确的:

inner= $("span.[class*="myClass"]")[indTextTitle].innerHTML;

现在,我有一些div包含了我喜欢的地址

<div class='row'><a class'title'> ... </a>...<p class='this'></p></div>
<div class='row'><a class'text'> ... </a>...<p class='that'></p></div>
<div class='row'><a class'title'> ... </a>...<p class='more'></p></div>

单击链接时,函数会被包裹

$(function() { $("a.title").click(function(){
var indTitle = $("a.title").index(this); 
var Index =   $($("a.title")[indTitle]).parents("div.row").index();

什么必须是愚蠢的简单是通过div的索引来解释其中一个p元素:

inner = S("div.row[index] p").innerHTML.

然而,我更愚蠢。我已经检查了很多方法,一旦索引的括号出现,什么都没有用。再一次,没有问题直接地对p.this [xy] .innerHTML进行处理。但它的索引是动态改变的,唯一的逻辑访问是div的索引。

感谢您的帮助

托马斯

2 个答案:

答案 0 :(得分:3)

您可以使用eq()功能或:eq - 选择器作为$('a.title:eq(1)')$('a.title').eq(1)

答案 1 :(得分:1)

按索引,尝试:

inner = $($("div.row")[Index]).find('p').html();

或者,由于您感兴趣的p元素似乎始终是div.row的最后一个孩子,您可以尝试:

inner = $(this).parent().find('p:last').html();

假设inner的点击处理程序中定义了a