最近我写了一个适合我的JQuery skript(toggle):
$("input[id^='show_Fulltext']").click(function(){
$("#Fulltext".concat($(this).val())).toggle('Drop');
});
这是周围的HTML代码(与ruby混合):
<%= @final[0..175]%><div id="Fulltext<%=@count%>" style="display:none;"><%=@final[176..@final.length]%></div>
<% if @final.length > 176 %>
<a><input type="image" src="" alt="[...]" value='<%=@count%>' id='show_Fulltext<%= @count%>'></input></a>
<% end %>
我很快解释它的作用。如果ruby变量@final中的文本大于175,则将所有超文本文本放入ID为FulltextX的div中。 FulltextX是一个正在运行的号码,因为这些字段有多个,我不想拥有相同的ID。
好到目前为止一切都很好 - 一切正常。 现在我有多个具有ID Fulltext1,Fulltext2,Fulltext3等的div。如果他们有超过175的字符,我可以切换它们。工作完美。
现在我的问题:我可以改变显示哪些文本。这也是在JQuery中完成的。好吧 - 现在的问题是。在我更改页面后,我的Toggle功能不再起作用了。
我发现了一个非常好的博客,解释了我如何解决它: http://blog.codebusters.pl/en/click-doesn-t-work-after-ajax-load-jquery/
我想这正是我应该做的事情来解决这个问题。不幸的是,目前我真的无法将我的代码调整到刚刚提到的博客中的给定示例。
任何使我的代码适应所显示代码的帮助都是相关的。我认为在适应之后,即使页面发生变化,切换也应该有效。