JQuery перебрать таблицу - PullRequest
1 голос
/ 17 апреля 2020

У меня есть таблица, в которой я могу перемещать строки вверх или вниз, для которых я поставил идентификатор. Теперь мне нужно сохранить новый порядок таблицы. Я думаю, что мне нужно сохранить строки [index], но у меня нет опыта работы с jquery. Моя таблица id = "rtbl", кнопка для вызова функции - "sroute". У меня есть предупреждение в функции, но это не работает. Просто новичок в jquery, что мне нужно сделать, чтобы сделать эту работу?

$("#sroute").click(function(){
    alert("Hello")
    $("#rtbl tr").each(function() {
        var val1 = $(t.rows[i].cells[0]).text();
        alert(val1) ;
        i++;
    });
});
<button id="sroute">Save Order</button>
<table id='rtbl'>
   <tr><th>Invoice</th></tr>
   <tr id='789'><td>789</td></tr>
   <tr id='123'><td>123</td></tr>
   <tr id='456'><td>456</td></tr>
</table>

Итак, цель состоит в том, чтобы обновить поле БД 'stopnum', где счет-фактура 789 stopnum будет равен 1, в счете 123 стоп-номер будет равен 2, а в счете 456 стоп-номер - 3.

1 Ответ

2 голосов
/ 17 апреля 2020

Грубая оценка объекта, который понадобится вашему API обновления БД. Вам придется настроить его для этого.

window.onload = (function(){
document.getElementById('sroute').onclick=( function(){
  var arrayOfInvoices = $('#rtbl tr:not(:eq(0))').map( function(i,el) { return ({ invoice: el.id, stopnum: i+1 }) } ).get();
  alert(JSON.stringify(arrayOfInvoices));
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="sroute">Save Order</button>
<table id='rtbl'>
   <tr><th>Invoice</th></tr>
   <tr id='789'><td>789</td></tr>
   <tr id='123'><td>123</td></tr>
   <tr id='456'><td>456</td></tr>
</table>
...