Jquery:向已选择的对象添加选择器

时间:2010-10-05 14:14:27

标签: jquery jquery-selectors

问候,

通过使用常规选择器,我可以选择输入文本字段的祖父(实际上是一个元素),并通过.next()选择下一行。

var nextOne = $(this).parent().parent().next();

从下一个ro开始,我想选择一个输入文本字段,它是一个“.foo”,它是这一行的孙子。

如何实现这一目标?

编辑:每一行都是这样的html格式:

<tr>
    <td  ><input alt="time" type="text" class="timefield start_time"/></td>
    <td  ><input alt="time" type="text" class="timefield end_time"/></td>
    <td  ><input type="text" class="programnamefield"/></td>                
</tr>

如果end_time字段被填充则chekcs的方法,如果是,则将下一行的start_time更改为前一个的end_time。反之亦然。

function autoCompleteTimes(){
    $('.end_time').change(function(){
        var nextOne = $(this).parent().parent().next();
// TODO
        });  
}

3 个答案:

答案 0 :(得分:1)

通过应用您选择作为范围的祖父母/下一行对象

var nextOne = $(this).parent()。parent()。next();

var nextFoo = $('。foo',nextOne);

答案 1 :(得分:1)

你可以使用find方法(如果input.foo在dom树中很深)或子节点(如果是一层深度)和选择器

nextOne.find('.foo');

nextOne.children('.foo');

更改nex行输入字段的时间

var end_time = nextOne.find('.end_time').val()
if (end_time != '') {
   // end_time is filled
   nextOne.next().find('.start_time').val(end_time);
}

答案 2 :(得分:1)

您可以使用以下代码:

nextOne.find('.foo');

希望这会对你有所帮助:)。