Trong tệp index.html.erb của tôi, tôi đang cố hiển thị tiêu đề cho đối tượng của mình (danh sách "") và bình thường "hiển thị", "chỉnh sửa" và "phá hủy" liên kết và/hoặc nút. Với: method =>: delete và: confirm => "bạn có chắc không?", Không phải link_to hoặc button_to sẽ hiển thị hộp xác nhận javascript. Dưới đây là index.html.erb tôi:Rails 3 - Javascript: xác nhận không hoạt động cho link_to và button_to với: method =>: delete
<h2><a href="#" onclick="alert('Hello world!'); return false;">Click Here for a Javascript test</a></h2>
<table>
<tr>
<th>List Title</th>
<th></th>
<th></th>
<th></th>
</tr>
<% @listings.each do |listing| %>
<tr>
<td><%= listing.title %></td>
<td><%= button_to 'Show', listing %></td>
<td><%= button_to 'Edit', edit_listing_path(listing) %></td>
<td><%= button_to('Destroy', listing,
:confirm => 'Are you sure?', :method => :delete)%> </td>
<td><%= link_to "Destroy", listing, :confirm => "Are you sure?", :method => :delete %> </td>
</tr>
<% end %>
</table>
Liên kết xác nhận "Hello World" JS ở phía trên cùng của danh sách hoạt động hoàn hảo, vì vậy tôi khá chắc chắn rằng javascript không phô trương đang làm việc tốt cho ứng dụng của tôi. (Tôi cũng xác nhận rằng tôi có cần thiết-- javascript_include_tag: mặc định và csrf_meta_tag nằm trong mẫu ứng dụng của tôi.) Tài liệu Rails xác nhận các đối số mà tôi đang sử dụng được hỗ trợ (url,: confirm,: method). Tuy nhiên không phải button_to hoặc link_to sẽ tạo cảnh báo JS được chỉ định bởi: confirm. Một chút khác lạ, với chính xác cùng một đối số, button_to sẽ xóa một bản ghi trong khi link_to không.
Bất kỳ đề xuất nào về điều cần điều tra để khắc phục điều này sẽ được đánh giá cao.
Cảm ơn!
Kiểm tra 'application/config. rb' để xem liệu bạn có đang tải các tệp JS mà bạn cho là mặc định hay không. (Tôi đã từng chút này gần đây khi tôi cố gắng để làm cho một ứng dụng đường ray bằng cách sử dụng jQuery thay vì Prototype. Mặc định là trống rỗng.) – Telemachus