用于类的先前实例的jquery选择器

时间:2011-04-25 11:58:32

标签: jquery jquery-selectors css-selectors

在按钮点击事件上,我想根据某个类读取文本框的值。页面上有多个带有该类的文本框,所以我想抓住按钮之前的那个。注意:这不是之前的,但我希望它在页面上搜索,直到找到实例。

我认为Prev()会这样做,但似乎不起作用

2 个答案:

答案 0 :(得分:3)

$(this).prevAll('.class:first');

prevAll:first过滤器

一起使用

答案 1 :(得分:0)

假设你有未知的嵌套,并且文本框是而不是兄弟,请试试这个:

$(":button").click(function() {
    var allElem = $("*");
    var buttonIndex = allElem.index(this);
    var nearest;
    $(".text").each(function(i, elm) {
        var index = allElem.index(elm);
        if (buttonIndex > index) {
            nearest = elm;
        }
    });
    alert($(nearest).val());
});

这依赖于元素的索引并找到最接近按钮的索引。我确信有一些很棒的选择器,希望有人会发布它:)

<强> Code example on jsfiddle