Цитата:
Если правильно понял, то можно так: $('#comment_list') .on('click', '.comment', fucntion(){}) .on('click', '.delete', fucntion(){}) .on('click', '.edit', fucntion(){}); |
Сначала так и было, пока новидомлення генерировались на странице. Но теперь они генерируются в файле script.js и отправляются после $('#comment_list').append (html)
Если открыть источник страницы, сообщений div нет. Код:
<div class="form_field_center" id="message_list"> |
Цитата:
Можно попробовать тогда так: $('#comment_list') .append(html) .find('.comment').on('click', fucntion(){}).end() .find('.delete').on('click', fucntion(){}).end() .find('.edit').on('click', fucntion(){}); либо так: var commentList = function(){return $('#comment_list');}; commentList .append(html) .find('.comment').on('click', fucntion(){}).end() .find('.delete').on('click', fucntion(){}).end() .find('.edit').on('click', fucntion(){}); Соотв. код этот ставить после загрузки Вашего "script.js". На самом деле способов множество может быть ... |
Опять не работает. Перепробовал все ваши варианты а также вводил свои правки - ни один не заработал.
Возможно нужно грузить сообщения не в файле script.js? |
Цитата:
Как-то так: console.group('Test #comment_list'); console.log($('#comment_list')); console.log(html); $('#comment_list').append(html); console.log($('#comment_list')); console.log($('#comment_list').find('.comment')); console.log($('#comment_list').find('.delete')); console.log($('#comment_list').find('.edit')); console.groupEnd(); Ну и соотв. заменяя $('#comment_list') на те варианты, которые приводил выше. |
Если использовать строку при нажатии на comment_list
var htmlStr = $('#comment_list').html(); получим всю историю переписки строкой. Но как получить ID сообщения на который наведен курсор и щелчке на нем? |
Цитата:
var htmlStr = $('#comment_list').html(); var commentList = $(htmlStr); commentList .find('.comment').on('click', fucntion(){var t = $(this); var id = t.prop('id');}).end() .find('.delete').on('click', fucntion(){var t = $(this); var id = t.prop('id');}).end() .find('.edit').on('click', fucntion(){var t = $(this); var id = t.prop('id');}); |
var commentList = $(htmlStr); при клике на comment_list возвращает массив типа [object Object] |
Вот как выглядят два сообщения при проверке элементов:
![]() Вот html строка етих сообщений: ![]() Однако при просмотре источника страницы наблюдаю следующее: ![]() |
Консоль выдала:
</div> has no method 'find' |
Часовой пояс GMT +3, время: 03:16. |