JQuery обход и поиск текстовых полей

0

Если я перебираю элементы в таблице - скажем, скрытое поле класса "pmtos" - как мне получить ссылку на текстовое поле (ввод) в пределах одной ячейки таблицы?

jQuery:

 // Loop through each hidden field, which holds the outstanding amount
 $(".pmtos").each(function () {

        var os = $(this).val();
        //
        //find text box in same cell - and populate with some value
        //
        //

 });

Благодарим вас за любые рекомендации по работе.

отметка

Теги:

4 ответа

1
Лучший ответ

Здесь решение вопроса до него было отредактировано (по запросу):

$('#allocate').click(function () {
  var recd = parseFloat( $('#pmtRecd').val() );

  $('input.pmtallocated').each(function() {
    var value = parseFloat( $(this).parent().prev().text() );
    this.value = (recd >= value) ? value : recd;         
    recd = recd - this.value;

    if (recd == 0) {
      return false;
    }
  });  
});

Примечание. Это не зависит от скрытого ввода. Он берет текст из td во втором столбце.

Здесь скрипка

Чтобы ответить на вопрос post-edit

Вы можете использовать siblings('.pmtallocated') или prev('.pmtallocated') чтобы получить вход. Использование siblings(), вероятно, будет лучше из двух, поскольку он не полагается на pmtallocated приходя непосредственно перед pmtos в разметке:

$(this).siblings('.pmtallocated').val()

1

Вы можете использовать $(this).closest('input')

1

Проверь это. может работать для вас.

   $(".pmtos").each(function () {

            var os = $(this).val();
            var input = $(this).closest('td').find('input[type=text]');

     });
  • 0
    Спасибо всем!
  • 0
    @MarkTait это выберет оба входа ( pmtallocated и pmtos )
Показать ещё 3 комментария
1

Пытаться

 // Loop through each hidden field, which holds the outstanding amount
 $(".pmtos").each(function () {

        var os = $(this);
        var cell = os.parent(); // gets the parent, i.e. the table cell
        var input = cell.find('input')[0];

 });

Ещё вопросы

Сообщество Overcoder
Наверх
Меню