Jquery- выбрать все значения из таблицы при активных чекбоксах

Всем здравствуйте. Никак не получается получить из таблица данные при активных чекбоксах. Данные надо получить из первого столбца. Вот отрывок из кода:

<tr class="k-master-row">
<td data-bind="visible: $parent._isHierarchy" class="k-hierarchy-cell" style="display: none;"><a href="#" class="k-icon k-i-expand"></a></td>
<td style="text-align:center; vertical-align:middle; padding:0px !important;" data-bind="visible: $parent._selection &amp;&amp; $parent.viewSettingsMode !== true,css:{ 'k-hierarchy-cell':!$parent._selection || $parent.viewSettingsMode === true } ">  
<input type="checkbox" data-bind=" checkedValue: $data, dataGridChecked: $parent._uiValue, enable: $parent._selectionEnabled &amp;&amp; !$parent._readOnly()" value="[object Object]"></td>
<!-- ko foreach:  $parent._dc -->
<td data-bind="text: $parents[1].getFormatedText($parent,$data,$element)">4487</td>
 
<td data-bind="text: $parents[1].getFormatedText($parent,$data,$element)">36</td>
 
<td data-bind="text: $parents[1].getFormatedText($parent,$data,$element)">04.12.2023 6:57:32</td>
 
<td data-bind="text: $parents[1].getFormatedText($parent,$data,$element)">04.12.2023 8:18:35</td>
 
<td data-bind="text: $parents[1].getFormatedText($parent,$data,$element)">69,479</td>
 
<td data-bind="text: $parents[1].getFormatedText($parent,$data,$element)">69,587</td>
<!-- /ko -->
</tr>

С помощью запроса Jquery пытаюсь получить все значения при активных чекбоксах:

selectedValues = $('input[type="checkbox"]:checked').map( function () {  
        return $(this).val();  
    })
    .get()
    .join(', ');

Соответственно получаю значения чекбокса [object Object]. Как мне получить значение 4487? Описание таблицы находится в другом месте. Вот пример первого столбца:

<th scope="col" role="columnheader" data-field="vedomost" aria-haspopup="true" rowspan="1" data-title="№ Ведомости"  
data-index="1" id="48ec558d-e96f-4eb8-9aad-2aaab9edbe0c"  
class="k-header k-with-icon k-filterable" data-role="columnsorter"><a  
class="k-grid-filter" href="#" title="Filter" aria-label="Filter" tabindex="-1"><span  
class="k-icon k-i-filter"></span></a><a class="k-link" href="#">№ Ведомости</a></th>

То есть вместо:

return $(this).val();

Надо что-то типа:

return $('tr.k-master-row>td:eq(1)').text()

Ответы (1 шт):

Автор решения: Faraday

Алгоритм:

  1. Ищем чекбоксы
  2. Находим родительский компонент
  3. Берём содержимое из ячейки

Код:

selectedValues = $('input[type="checkbox"]:checked').map(function() { 
    var $parentRow = $(this).closest('tr.k-master-row');
    var value = $parentRow.find('td:eq(1)').text();
    return value;
}).get().join(', ');
→ Ссылка