使用jquery在同一个div中查找一个类

wha*_*atf 2 jquery jquery-selectors

我想在同class一个class内找到一个对应的另一个div.

HTML结构:

<div class="main">
  <div class="party">
                <a href="#"><img id="1001" class="vote" src="http://img2.jpg"></a>
                <p class="votenums"> 20 votes.</p>
  </div>

   <div class="party">
                <a href="#"><img id="1001" class="vote" src="http://imgtwo2.jpg"></a>
                <p class="votenums"> 30 votes.</p>
  </div>
Run Code Online (Sandbox Code Playgroud)

jQuery代码是:

$(function() {
    $(".vote").live("click", function(e) {
        e.preventDefault();
        $(this).find(".votenums").text("changed text");
    });
});
Run Code Online (Sandbox Code Playgroud)

当我点击img与类vote我想编辑类时votenums,对应同一个div.意思是,所需的行为是,当点击图像时,文本应该改变.

小提琴在这里:http://jsfiddle.net/85vMX/1/

gdo*_*ica 8

find向下搜索,而.votenums不是.vote你的后代应该遍历到div然后找到后代.votenums

$(function() {
    $(".vote").live("click", function(e) {
        e.preventDefault();
        $(this).closest('div').find(".votenums").text("changed text");
    });
});
Run Code Online (Sandbox Code Playgroud)

如果你想要的div总是有class=party你可以搜索它:
$(this).closest('.party').find(".votenums").text("changed text");
类选择器比元素选择器更好

JSFiddle DEMO

找:

描述:获取当前匹配元素集中每个元素的后代,由选择器,jQuery对象或元素过滤.

最近:

描述:获取与选择器匹配的第一个元素,从当前元素开始并逐步向上遍历DOM树.