JQuery получить значение от одного тд к другому

У меня есть этот код

<table class="X">
  <tr>
    <td class="Y">Value</td>
  </tr>
</table>

<table class="Z">
  <tr>
    <td><input class="edit-Y" type="text"></td>
  </tr>
</table>

Мне нужно получить значение из td с классом "Y" для ввода с классом "edit-Y" с помощью jQuery. Я пытался кодировать сценарии по-другому, но в любое время я получал пустое поле или [Object Object]. Есть идеи?

Спасибо!

3 ответа

Решение

Попробуй это,

$('.edit-Y').val($('.Y').html());

Дополнительный ответ за комментарий

Если у вас есть html, подобный следующему, и вы хотите выбрать каждое значение в td и вставить его в соответствующие поля ввода,

<table class="X">
  <tr>
    <td class="Y1">Value1</td>
    <td class="Y2">Value2</td>
    <td class="Y3">Value3</td>
  </tr>
</table>

<table class="Z">
  <tr>
    <td><input class="edit-Y1" type="text">
    <input class="edit-Y2" type="text">
    <input class="edit-Y3" type="text"></td>
  </tr>
</table>

JQuery будет делать так,

$(function(){
 $('td[class^=Y]').each(function(){ 
    var tdValue = $(this).html();
    var id = $(this).attr('class');
    $('.edit-'+id).val(tdValue);
  });
});

Более универсальный подход:

$(".Z input").val(function() {
    return $(".X td." + this.className.split("-").pop()).text();
});

ДЕМО: http://jsfiddle.net/G3tBT/

$('.edit-Y').val( $('td.Y').text() );

Другие вопросы по тегам