Цитата:
Если правильно понял, то можно так:
$('#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, время: 14:13. |