En mi archivo index.html.erb estoy intentando mostrar el título de mi objeto (un "listado") y lo normal "mostrar", "editar" y "destruir" enlaces y/o botones. Con: method =>: delete y: confirm => "¿estás seguro?", Ni link_to ni button_to presentarán el cuadro de confirmación de javascript. Aquí está mi index.html.erb:Rails 3 - Javascript: confirme que no funciona para link_to y button_to con: 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>
El enlace de confirmación "Hello World" JS en la parte superior de la lista funciona a la perfección, así que estoy bastante seguro de que Javascript discreta está trabajando bien para mi aplicación. (También confirmé que tengo lo necesario-- javascript_include_tag: los valores predeterminados y csrf_meta_tag están en mi plantilla de aplicación). La documentación de Rails confirma que los argumentos que estoy usando son compatibles (url,: confirm,: method). Sin embargo, ni button_to ni link_to generarán la alerta JS indicada por: confirm. Otro detalle extraño, con exactamente los mismos argumentos, button_to eliminará un registro mientras que link_to no lo hará.
Cualquier sugerencia sobre qué investigar para solucionar esto sería apreciada.
Gracias!
Comprobar aplicación '/ config. rb' para ver si está cargando los archivos JS que cree que tiene como valores predeterminados. (Estuve un poco por esto recientemente cuando traté de crear una aplicación de rieles usando jQuery en lugar de Prototype. Los valores predeterminados estaban vacíos). – Telemachus