如何向上移动寻找元素?

时间:2012-10-03 05:03:21

标签: jquery

<form method='post'>
<input type='text' name='A'>
<input type='text' name='B' readonly>
<input type='text' name='C' class='CCC'>
<select name='D'><option value=''>Select</option></select>
<input type='text' name='E' class='first'>
<input type='text' name='F' class='first'>
<button type='submit' name='BTN'>click</button>
</form>

如何使用jquery查找上面的不同元素?到目前为止我只知道.prev()但有时当我使用很多.prev()来爬回来时它会返回给我NULL / object。

任何好的学习方法?!

对不起,让我详细介绍一下我想在这里学到的东西。

1)。我点击按钮时从A获取价值的方式 $(本).prev()。prev()。prev()。prev()。prev()。prev()。VAL() 应该有更好的方法吧!

2)。如何找到以前只读的元素?

3)。如何找到或获得前一个元素的价值,因为它有“CCC”类?

4)。如何找到或得到具有相同“第一”类别的不同价值?我知道有类似的东西:第一个或第二个,但我不断得到错误代码,当我写像$(“input [class ='first']:first”)。val()/ $(“input [class ='第一']:第二“)VAL()

3 个答案:

答案 0 :(得分:2)

您可以转到form元素,并在其中找到任何字段,例如:

$(function(){

  $('button').click(function(){

    var c = $(this).closest('form').find('[name=C]');
    alert(c.val());

  });

});

答案 1 :(得分:2)

有很多方法可以找到元素(.siblings().find().children().prev().next(),...)

例如下面的代码返回元素,其CCC类与$('input.A')处于同一级别

$('input.A').siblings('CCC');
看看这个链接可能会有所帮助: http://api.jquery.com/category/traversing/tree-traversal/

答案 2 :(得分:1)

如果您的目标是找到表单的元素,请尝试使用

$(document).ready(function(){
    $("#someform").find(':input').each(function() {
       alert($(this).attr('name'));

     });
 });

工作 demo