Mic*_*ant 8 ruby ajax ruby-on-rails ruby-on-rails-3
如果我有链接 -
= link_to 'ajaX',
ajax_delete_link_path(link),
data: { :confirm => 'Are you sure?', :remote => true }
Run Code Online (Sandbox Code Playgroud)
有路线:
get 'ajax_delete_link/:id', to: 'links#ajax_delete_link', as: :ajax_delete_link
Run Code Online (Sandbox Code Playgroud)
和一个链接控制器:
def ajax_delete_link
@link = Link.find(params[:id])
@link.destroy
respond_to do |format|
format.js
end
end
Run Code Online (Sandbox Code Playgroud)
并ajax_delete_link.js.erb与
var element = document.getElementById("id");
element.parentNode.removeChild(element);
# This is the part that doesn't work. Not sure how to access the id
Run Code Online (Sandbox Code Playgroud)
控制器删除数据库记录但不更新页面.我试图删除包含a的td的父表行
html就是这样
...
<td>
<a href="/ajax_delete_link/396" data-confirm="Are you sure?" data-remote="true">ajaX</a>
</td>
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,发出 ajax 请求会更改数据库,但实际上不会更新页面。您需要为 ajax 提供一个回调来操作 DOM 以删除您想要删除的表行。
当您使用 时,Rails 会触发自定义事件(请查看https://github.com/rails/jquery-ujs/wiki/ajax:remote => true ) ,您可以使用它附加回调。
| 归档时间: |
|
| 查看次数: |
4493 次 |
| 最近记录: |