У меня есть набор флажков, которые добавляются в документ с помощью вызова Ajax
<input type='checkbox' checked class='import'>
<input type='checkbox' checked class='import'>
<input type='checkbox' checked class='import'>
<input type='checkbox' checked class='import'>
<input type='checkbox' checked class='import'>
У меня есть несколько битов JavaScript (с использованием прототипа)
function check_toggle(obj, e) {
if (e.shiftKey) {obj.checked=!obj.checked;}
else if (e.altKey) {obj.checked=true;}
else if (e.ctrlKey) {obj.checked=false;}
}
$$('.import').each(function(obj){
Event.observe(obj, "mouseover", function(e){alert('here');}.bind(this))
});
Теперь, если флажки находятся на странице при загрузке страницы, трюк mousover работает отлично.
К сожалению, если я попытаюсь каким-либо образом вызвать метод "$$" ПОСЛЕ добавления флажков в DOM через AJAX, ни одному из них не удастся подобрать прослушиватель событий.
ТАК ... кто-нибудь знает, как заставить прототип перечитать текущее состояние DOM? (или любой другой обходной путь, который вы можете придумать)
Я попытался поместить $$ в функцию и вызвать ее как часть обратного вызова onSuccess, как отдельную функцию после выполнения вызова ajax и вывода всей функции $$ как части фактических значений AJAX. Все безрезультатно.
Помощь очень ценится.