0
<div class="label">
   Some text
</div>
<div class="group">
    <div class="x">
        <div class="container">
        <input type="text"></input>
        <select  class="ddl"><option>--</option></select>
        <div>
    <div>
<div>

我有一个像上面这样的结构参见下面的代码

$.each($('.label'), function (index, value) {

$(this) //code to be here

}

我必须得到所有输入和ddl类,在class =“label”旁边的部门下

$(this).next("div input,.ddl") not working
4

4 回答 4

3
$(this).next('div.group').find('input,.ddl')

使用.next()然后.find()

于 2013-09-12T09:10:44.003 回答
1

如果您必须将您的选择器.label基于以下内容,则可以:

$(".label").next("div").find(":input").each(function(i,e){
    console.log(e);
});

如果您可以更自由地使用选择器,请使用:

$(".group :input").each(function(i,e){
    console.log(e);
});

请注意,这些选择使用:inputwhich 查找页面上的所有输入。如果您要通过添加新输入来更改标记,则此选择器将足够强大以发现新添加的输入。

JS 小提琴:http: //jsfiddle.net/6BbGB/

于 2013-09-12T09:12:44.653 回答
1

你可以试试这个。

$(".label").next().find("*")


$(".label").next().("div input,.ddl")

演示

于 2013-09-12T09:11:35.363 回答
1

这应该这样做:

$('.label').each(function() {
    var inputsAndDdls = $(this).next('div').find('input, .ddl');
});

示例小提琴

于 2013-09-12T09:14:32.017 回答