我在我的Rails应用程序中使用Jquery Boxy。
我用过
function rateboxy(id){
var box = new Boxy(jQuery('#rate_'+id),{
title: "Rate",
draggable: false,
closeable: true,
center: true,
modal: true
});
return false;
}
我有一个div
<div id="rate_<%= blog.id%>" style="display:none">
....
<div>
每次点击链接
<%= link_to "Rate","#",:onclick=>"rateboxy('#{blog.id}');" %>
它打开了一个四四方方式。我在boxy里面有一些更新函数,它将使用响应更新div中的html。
但是当我多次点击链接时。每次它创建一个具有相同id的新四四方方,所以它不会更新旧的打开的四四方方,我在firebug中发现。 如何解决这个问题。
答案 0 :(得分:0)
现在,每次在ratesboxy()函数中单击链接时,您都会创建一个新的Boxy元素。
将div声明移到函数之外:
var box = new Boxy(jQuery('#rate_'+id),{
title: "Rate",
draggable: false,
closeable: true,
center: true,
modal: true
});
然后让您的链接切换现有div的可见性。不确定rails,但在jQuery中这将是:
function rateboxy(id){
jQuery("#"+id).toggle();
}