Недавно я написал Skript JQuery (тумблер), который работает для меня:JQuery код не работает после загрузки Ajax
$("input[id^='show_Fulltext']").click(function(){
$("#Fulltext".concat($(this).val())).toggle('Drop');
});
Вот окружающий HTML код (смешанный с рубином):
<%= @final[0..175]%><div id="Fulltext<%[email protected]%>" style="display:none;"><%[email protected][[email protected]]%></div>
<% if @final.length > 176 %>
<a><input type="image" src="" alt="[...]" value='<%[email protected]%>' id='show_Fulltext<%= @count%>'></input></a>
<% end %>
Я коротко объясню, что он делает. Если текст в рубиновой переменной @final больше, чем 175, весь текст с надписью помещается в div с идентификатором FulltextX. FulltextX - это запущенное число, так как существует несколько этих полей, и я не хочу иметь одинаковый идентификатор.
Хорошо, пока все хорошо - все работает. Теперь у меня есть несколько таких div с идентификаторами Fulltext1, Fulltext2, Fulltext3 и т. Д. И я могу переключать каждый из них, если у них больше символов, чем 175. Работает отлично.
Теперь моя проблема: я могу изменить, какие из этих текстов показаны. Это также делается в JQuery. Ну, теперь проблема. После изменения страницы моя функция Toggle больше не работает.
Я нашел очень хороший блог, объясняющие, как я мог это исправить: http://blog.codebusters.pl/en/click-doesn-t-work-after-ajax-load-jquery/
Я предполагаю, что это именно то, что я должен сделать, чтобы исправить эту проблему. К сожалению, на данный момент я действительно застрял, адаптировав свой код к данному примеру в только что упомянутом блоге.
Любая помощь, адаптирующая мой код к показанному коду, оценивается. Я думаю, что после адаптации переключатель должен работать даже после изменения страницы.
Большое спасибо! Это работает! – Donselm
рад помочь вам :) –