我想从某些Rails代码生成的HTML表中删除一行,我希望其他行“向上滑动”到新位置。
我对此很陌生,我确信我可能犯了一个简单的错误。
以下是生成表格行的部分代码:
<tr id="ride_<%=h ride.id %>">
<td><%=h ride.name %></td>
<td><%=h ride.land %></td>
<td align="right"><%=h ride.height_restriction %></td>
<td><%= link_to_remote 'remove', :url => { :action => :destroy, :ride_id => ride.id }, :html => {:onclick => "Effect.SlideUp('ride_" + ride.id.to_s + "')"} %></td>
</tr>
这是从该部分生成的HTML:
<tr id="ride_130">
<td>thrill ride</td>
<td>fun land</td>
<td align="right">40</td>
<td><a href="#" onclick="Effect.SlideUp('ride_130'); new Ajax.Request('/SimpleRailsApp/rides/destroy?ride_id=130', {asynchronous:true, evalScripts:true, parameters:'authenticity_token=' + encodeURIComponent('9f2334b84d2da7eddfbfaadf8138c0a1c8feca47')}); return false;">remove</a></td>
</tr>
现在,该行删除正常,但我没有得到很酷的AJAX效果。它只是“快照”了。
到目前为止,“Puff”是我能够完成工作的唯一效果。
任何帮助或建议都将不胜感激。
更新
可能是这个效果在表元素内部不起作用吗?我在无序列表上尝试了几乎所有的代码,它似乎工作正常。
我也发现这个other question表示动画也不能用于jQuery中的表格,所以我可能在这里运气不好。
答案 0 :(得分:0)
由于动画是“捕捉”,您可能想尝试添加持续时间选项:
Effect.SlideUp('id_of_element', { duration: 3.0 });
答案 1 :(得分:0)
您是否包含默认的JS库?
<%= javascript_include_tag :defaults %>
答案 2 :(得分:0)
我发现this other Stack Overflow answer to a question表示动画在jQuery中的表格也不起作用,所以我可能在这里运气不好。