jQuery селектор не работает в динамически вставленных данных - PullRequest
0 голосов
/ 12 апреля 2020

У меня проблема с выбором элемента из html throght jQuery. Возможно, это тот факт, что элемент, к которому я пытаюсь получить доступ, динамически добавляется через Json, но, конечно, перед выполнением следующего js. В чем может быть проблема и как ее можно решить?

<table id="myTable">
<tbody>
    <!-- inserted with getJson -->
    <tr> 
        <td> <input type='checkbox'  id="myInput0"> </td>
        <td class="myClass">some text</td>
    </tr>
    <!-- other rows -->
</tbody>
</table>
var id = "myInput" + 0;

var text = $("#"+id).closest('tr').find('td.myClass').text();   
alert(text)

Ответы [ 2 ]

0 голосов
/ 12 апреля 2020

Я попытался воссоздать сценарий, используя get JSON и вставив элемент динамически, затем вы можете сделать что-то вроде этого:

$( document ).ready(function() {
  const url =  'https://jsonplaceholder.typicode.com/todos/1';
  $.getJSON( url, function( data ) {
    $('#main').append(data.title); 

  });
});

codepen

надеюсь, это поможет:)

0 голосов
/ 12 апреля 2020

Посмотрите на этот вопрос переполнения стека - Как мне прикрепить события к динамическим c HTML элементам с jQuery? - есть несколько подходов, которые вы можете использовать, но шутка это значит, что вам нужно привязать тело или контейнер вашего элемента, а не сам элемент.

Добро пожаловать в сообщество user21! Надеюсь, эта информация полезна.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...