За последние 24 часа нас посетили 16560 программистов и 1645 роботов. Сейчас ищут 1845 программистов ...

не могу обратится к элементу вставленному из <template> через jq

Тема в разделе "JavaScript и AJAX", создана пользователем Taktreba, 25 дек 2017.

  1. Taktreba

    Taktreba Активный пользователь

    С нами с:
    11 янв 2017
    Сообщения:
    543
    Симпатии:
    132
    узнал про такую удобную штуку как <template>.
    Сделал себе заготовку
    PHP:
    1. <template id="phone-got">
    2.                     <button class="btn btn-primary btn-mini find-sms">Поиск</button>
    3.                     <button class="btn btn-primary btn-mini refuse-order">Отменить</button>
    4.                     <button class="btn btn-primary btn-mini ban-number">Забанить</button>
    5.                 </template>
    потом сделал кнопку которая добавляет этот код в div
    Код (Javascript):
    1. $('.order-action:last').html($('#phone-got').html());
    в этом <template id="phone-got"> есть батон find-sms и как я не пытаюсь обратится к нему, не могу его найти с помощью селекторов jq

    и так
    $("button.btn.btn-primary.btn-mini.find-sms")
    и так
    $(".find-sms")
    и id вешал...
    Код (Javascript):
    1. $("button.btn.btn-primary.btn-mini.find-sms").click(function () {
    2.         alert('найди меня')
    3.     });
    что я упускаю из вида?
     
  2. Taktreba

    Taktreba Активный пользователь

    С нами с:
    11 янв 2017
    Сообщения:
    543
    Симпатии:
    132
    чую что все изза того что все происходит в $(document).ready(function () {}); ведь в момент загрузки страницы такого элемента как find-sms небыло, и соответственно click вешать не на что. Но как это решить дальше не пойму
    --- Добавлено ---
    нащупал вот так
    Код (CSS):
    1. ("body").on('click','.find-sms',function () {})
    не знаю насколько это правильно, если будут предположения пишите

    и скажите свое мнение по поводу этой конструкции
    Код (Javascript):
    1. $(this).parent().parent().find('.order-phone').html()
    нормально такое использовать или нет?