Nel mio file index.html.erb sto provando a visualizzare il titolo sul mio oggetto (un "elenco") e il normale "mostra", "modifica" e "distruggi" link e/o pulsanti. Con: method =>: delete e: confirm => "sei sicuro?", Né link_to o button_to presenteranno la casella di conferma javascript. Qui è la mia index.html.erb:Rails 3 - Javascript: conferma di non funzionare per link_to e 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>
link di conferma "Ciao Mondo" JS in cima alla lista funziona perfettamente, quindi sono abbastanza sicuro che JavaScript discreto sta lavorando bene per la mia app. (Ho anche confermato che ho il necessario - javascript_include_tag: defaults e csrf_meta_tag sono nel mio modello di applicazione.) La documentazione di Rails conferma che gli argomenti che sto usando sono supportati (url,: confirm,: method). Tuttavia né button_to né link_to genereranno l'avviso JS indicato da: confirm. Un altro po 'di stranezza, con gli stessi identici argomenti, button_to cancellerà un record mentre link_to non lo farà.
Qualsiasi suggerimento su cosa investigare per risolvere questo problema sarebbe apprezzato.
Grazie!
Controllare 'application/config. rb' per vedere se stai caricando i file JS che pensi di essere come predefiniti. (Sono stato un po 'di recente quando ho provato a creare un'applicazione per rails usando jQuery invece di Prototype. I valori di default erano vuoti.) – Telemachus