2014-11-18 2 views
0

У меня вопрос вроде так.JQuery - найти следующий элемент в каждой петле

У меня есть HTML структуру:

<form id="form"> 
    <div class="row"> 
     <div class="item-input"> 
      <label for="A1">A1</label> 
      <input type="text" name ="A1" /> 
      <span class="input-require">(*)</span> 
      <span class="info">(Enter A1)</span> 
     </div> 
     <div class="item-input"> 
      <label for="A2">A2</label> 
      <input type="text" name ="A2" /> 
      <span class="input-require">(*)</span> 
      <span class="info">(Enter A2)</span> 
     </div> 
    </div> 
    <div class="row"> 
     <div class="item-input"> 
      <label for="B1">B1</label> 
      <input type="text" name ="B1" /> 
      <span class="input-require">(*)</span> 
      <span class="info">(Enter B1)</span> 
     </div> 
     <div class="item-input"> 
      <label for="B2">B2</label> 
      <input type="text" name ="B2" /> 
      <span class="input-require">(*)</span> 
      <span class="info">(Enter B2)</span> 
     </div> 
    </div> 
    ... 
</form> 

Теперь я хочу, чтобы выбранный «пролете» имеет класс «информация» за входной [тип = текст] каждый. Я стараюсь:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#form input[type=text]").each(function(){ 
      var spanInfo = $(this).closest("item-input").next().find('span.info'); 

      console.log(spanInfo.text()); // Result is empty 
     }); 
    }); 
</script> 

Почему пусто? Помоги мне, пожалуйста. Как, благодаря

ответ

1

var spanInfo = $(this).closest("item-input").next().find('span.info');

Должно быть

var spanInfo = $(this).closest(".item-input").next().find('span.info');

вам не хватает. (точка, класс)

+0

Я was'nt осторожна. :) Спасибо –

0

Ваше среднее - это показать «(Enter A2)» и «(Enter B2)» или показать все 4 значения элемента: (Enter A1), (Enter A2), (Enter B1), (Enter B2)

Если только показать 2 значение, то CODE HERE

еще вы хотите, чтобы показать значение 4, можно написать:

$(document).ready(function() { 
    $("#form input[type=text]").each(function(){ 
     var spanInfo = $(this).closest(".item-input").find('span.info'); 

     console.log(spanInfo.text()); 
    }); 
}); 
+0

Спасибо. я попробую –

Смежные вопросы