Javascript 在rails应用程序中使用AJAX更新模型字段而不使用表单
我有一张这样的桌子:Javascript 在rails应用程序中使用AJAX更新模型字段而不使用表单,javascript,jquery,ruby-on-rails,ruby,ajax,Javascript,Jquery,Ruby On Rails,Ruby,Ajax,我有一张这样的桌子: def approve chord.approve # this method is on the Chord model and is working respond_to do |format| format.js end end 每一行都来自此部分: <div class="row chord-table-row" id= <%= "chord-#{chord.id}" %>> <div class="
def approve
chord.approve
# this method is on the Chord model and is working
respond_to do |format|
format.js
end
end
每一行都来自此部分:
<div class="row chord-table-row" id= <%= "chord-#{chord.id}" %>>
<div class="small-1 columns"><%= chord.id %></div>
<div class="small-2 columns"><%= chord.name %></div>
<div class="small-3 columns"><%= chord.description %></div>
<div class="small-3 columns"><%= chord.user.username %></div>
<div class="small-3 columns"><%= link_to 'Approve', approve_path, class: 'chord-approval-button' %></div>
</div>
我想用正确的“rails”方式来做这件事,因此任何指导/建议都将不胜感激!谢谢 查看:
<%= link_to_function 'Approve', "$.get('#{approve_path}', {chord_id: #{chord.id}})", class: 'chord-approval-button' %>
approve.js:
$('dom#u_need_to_change').html('<%= j render partial: 'partial_you_need_to_render' %>')
$('dom#你需要改变').html(“”)
就这些
当然,您需要正确的路线(get
,或者您最好将其更改为post
,这并不重要)和approve.js
必须位于正确的位置(views/chord
文件夹,我猜)查看:
<%= link_to_function 'Approve', "$.get('#{approve_path}', {chord_id: #{chord.id}})", class: 'chord-approval-button' %>
approve.js:
$('dom#u_need_to_change').html('<%= j render partial: 'partial_you_need_to_render' %>')
$('dom#你需要改变').html(“”)
就这些
当然,您需要正确的路线(
get
,或者您可以更好地将其更改为post
,这并不重要)并且approve.js
必须位于正确的位置(views/chord
文件夹,我猜)添加成员路线以供批准:
resources :chords do
member do
post 'approve'
end
end
然后url帮助程序将接受chord/chord id。您可以使用remote:true
,就像您希望的那样:
<%= link_to 'Approve', approve_chord_path(chord), remote: true, method: :post %>
您的
respond\u to
块看起来不错,您的JavaScript将运行。添加成员路由以供批准:
resources :chords do
member do
post 'approve'
end
end
然后url帮助程序将接受chord/chord id。您可以使用remote:true
,就像您希望的那样:
<%= link_to 'Approve', approve_chord_path(chord), remote: true, method: :post %>
您的
respond\u to
块看起来很好,您的JavaScript将运行。很好,我已经搜索了很多年了。谢谢太好了,我已经找了很久了。谢谢