2012-05-17 3 views
0
<label for="a1">First:</label> 
<input id="a1" class="first" type="text" name="a1" value="123"> 
<label for="b1">Second:</label> 
<input id="b1" class="second" type="text" name="b1"> <br /> 
<label for="a2">First:</label> 
<input id="a2" class="first" type="text" name="a2"value="3424"> 
<label for="b2">Second:</label> 
<input id="b2" class="second" type="text" name="b2"> <br /> 
<label for="a3">First:</label> 
<input id="a3" class="first" type="text" name="a3"value="1235"> 
<label for="b3">Second:</label> 
<input id="b3" class="second" type="text" name="b3"> <br /> 

$('.second').click(function(){ 
    var get_first = // ??? 
    $(this).val(get_first); 
}) 

Мне бы хотелось, например, - если я нажму на вход b3, то в этом значении теперь будет значение от a3. как я могу сделать это со следующим и предыдущим в одном классе?Используйте следующий и предыдущий() в jQuery

http://jsfiddle.net/Bgkrz/

+0

Подождите, при фокусировке '# b3' вы хотите, чтобы входные данные заполнялись автоматически со значениями из ввода' # a3'? Разве это не означает, что по определению означает, что все входы имеют такое же значение, как и первый вход? –

ответ

2

Я не уверен, что я могу думать о причине сделать это, но при условии, я понимаю ваши требования правильно, то это должно работать (в настоящее время не проверены):

$('input:text').focus(
    function(){ 
     var that = $(this); 
     that.val(that.prevAll('input:text:first').val()); 
    }); 

JS Fiddle demo.

Ссылки:

0

вы можете попробовать, как этот JsFiddleDemo

$('.second').click(function(){ 
    var get_first = $(this).prev().prev().val(); 
    $(this).val(get_first); 
}) 
0

Проверить это Fiddle

Использование jQuery.prevAll() Это будет возвращать массив в обратном порядке, вы можете найти элемент при нулевом индексе здесь.

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