1
我有一個管理志願者和事件的Rails 3.2.3應用程序。在我的一個觀點中,我創建了一個摧毀志願者活動的鏈接。我正在使用data-remote = true。控制器運行正常,Rails說它正在渲染我的destroy.js.erb,但是我的腳本文件沒有被調用。我的腳本試圖刪除一個DIV元素並更新一個範圍的內容。下面是一些細節:瀏覽器沒有響應destroy.js.erb
我的視圖代碼:
<%= link_to '', event, method: :delete, confirm: "Are you sure you want to delete this volunteer posting?", title: event.name, class: "icon-remove", remote: true%> </li>
我的控制器代碼: ...
respond_to :html, :js
def destroy
@volunteer_event = VolunteerEvent.find(params[:id])
@volunteer_event.destroy
respond_with(@volunteer_event)
end
我destroy.js.erb
$("#hours_worked_total").html("<%= @volunteer_event.worker.account.total_hours_worked %>")
$("#volunteer_posting-<%[email protected]_event.id %>")
.fadeOut ->
$(this).remove()
這是建在考慮生成的HTML:
<ol class="events">
<div id="volunteer_posting-48">
<li><strong>9808</strong> worked on August 5, 2012 by <i>Louie Ferry</i> for a total of 5 hours.
<a href="/volunteer_events/48" class="icon-remove" data-confirm="Are you sure you want to delete this volunteer posting?" data-method="delete" data-remote="true" rel="nofollow" title="9808"></a> </li>
</div>
</ol>
這是服務器日誌:
Started DELETE "/volunteer_events/48" for 127.0.0.1 at 2012-05-08 11:17:50 -0400
...
Rendered volunteer_events/destroy.js.erb (2.7ms)
這是瀏覽器的請求和響應:
Response:
$("#hours_worked_total").html("0")
$("#volunteer_posting-48")
.fadeOut ->
$(this).remove()
Content-Type:text/javascript; charset=utf-8
我意識到這是咖啡,但由於某種原因,我認爲這是JS文件中互換。我的錯誤,並感謝迪倫。這是我的第一個rails應用程序。 – jplumey