Jquery(附近的选择器?)

时间:2013-08-09 18:27:20

标签: jquery selector

我将用一个例子来解释。

我们的HTML就是这样:

<span>ok 
<span>1</span>
<a href=''></a>
</span>

我的jquery代码是这样的:

$("a").live('click', function(){

var a = $(this).closest("span");

alert(a);

});

但结果却给了我“ok 1”。 我只想要“1”。

如何选择“附近的标签”?

3 个答案:

答案 0 :(得分:3)

尝试

var a = $(this).prev("span");

<强> jsFiddle example

仅供参考,{1}}已被弃用,因为我认为自1.7以来.live()

答案 1 :(得分:3)

不要使用.live,不推荐使用。

$("a").click(function(){

var a = $(this).prev("span").text();

alert(a);

});

<强> JSFIDDLE

答案 2 :(得分:-1)

你正在寻找一个兄弟元素,在这种情况下是前一个元素。使用.prev()

$("a").on('click', function(){
   var a = $(this).prev("span");
   alert(a);
});

请注意,a是一个jQuery object,因此提醒它只会说[object Object]

此外,由于.live()已弃用,我将.on()更改为.live()。如果您的链接是动态生成的,则语法略有不同:

$(document).on('click', 'a', function(){
   var a = $(this).prev("span");
   alert(a);
});