sto usando Rails 3.1.1Incapace di legare l'Ajax: il successo di modulo creato con form_for ....: a distanza => true
Ho il seguente in una vista Haml:
= form_for booking.notes.build, :remote => true do |f|
= f.text_area(:content)
= f.hidden_field(:noteable_id)
= f.hidden_field(:noteable_type)
= f.submit('Add note')
Che crea nuove note sull'invio. Anche la risposta dal mio controller appare correttamente in una console di Chrome (scheda Rete). Ma non riesco ad afferrare la risposta.
Desidero aggiornare l'elenco delle note sulla pagina dopo l'invio. Ho cercato di legarmi alla risposta ajax in modo da poter afferrare la risposta, ma sto fallendo. Ad esempio, penso che questo dovrebbe funzionare ma non lo fa:
$('#new_note').bind('ajax:success', function() {
alert('Hi');
});
Ma non viene attivato alcun avviso. Ciò che penso spiega perché anche questo non funziona.
$('#new_note').bind("ajax:success", function(evt, data, status, xhr){
// Insert response partial into page below the form.
$(this).parent.append(xhr.responseText);
})
Potete per favore indicarmi cosa potrebbe andare storto?
Ho risolto questo problema utilizzando un file create.js.erb con codice che aggiorna l'oggetto necessario. Ma preferirei essere in grado di prendere la chiamata ajax, in modo da poter usare l'oggetto errore ajax, se necessario. – ReggieB