Сделать кликабельную ячейку в таблице Dynami c с JQuery - PullRequest
0 голосов
/ 14 февраля 2020

Я хотел бы добавить подробную ссылку в указанные c ячейки в динамической c таблице в JQuery.

Этот код прекрасно работает при добавлении ячейки / строки:

$('<td class="ploegen-details-naam" onclick="link_naar_info_speler(this.parentNode.childNodes[0].textContent)">
   </td>').text(speler_naam).appendTo(details_rows);

Но если я хочу добавить динамически подробные идентификаторы в ячейку, это больше не будет ссылаться:

for (var x = 0; x < len; x ++) {
   $('<td>', {id:"naam_thuis" + x}, {class:"ploegen-details-naam"},
  {onclick:"link_naar_info_speler(this.parentNode.childNodes[0].textContent)"}).text(speler_naam).appendTo(details_rows);
}

Эта функция точно такая же для 2 примеров:

function link_naar_info_speler(speler_id) 
{
    location.href="/ADL/Info/Spelers/Spelers.html?" + speler_id;
}

Часть, которая не работает во втором примере, - это щелчок по ссылке. Я только опубликовал соответствующий код, так как остальная часть кода одинакова в 2 случаях.

1 Ответ

1 голос
/ 14 февраля 2020

Вам просто нужно объединить ваши объекты в один, вместо того, чтобы неправильно пытаться передать объект по атрибуту.

Пример:

for ( var i = 0; i < 4; i++ ) {
  $('<p>', { id: `id${i}`, class: 'my-class', onclick: 'echoMyId(this)' }).text(i).appendTo('#container');
}

function echoMyId (paragraph) {
  console.log(paragraph.id);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="container">
</div>
...