Ich googelte viel und war nicht in der Lage, meinen Fehler zu finden. Als ich gerade mit JS angefangen habe, könnte dies ein einfacher sein. Verwendung: Schienen 4Schienen: Wie Ajax Erfolg zu fangen
Ich habe ein Modal mit einer Form, die ich gerne nach dem erfolgreichen (oder nicht) Ajax-Aufruf tun würde. Vorerst nur das Modal schließen.
modal (dies funktioniert tatsächlich funktioniert, so kann ich Sachen bearbeiten):
.modal.fade{ id: attribute.id, role: 'dialog', tabindex:'-1' }
.modal-dialog{ role: 'document'}
.modal-content
.modal-header
%button{ type: 'button', class: 'close', 'data-dismiss' => "modal" }
%span ×
%h4.modal-title= attribute.name
= form_for attribute, remote: true, html: { class: 'form-inline', id: 'edit_form' } do |f|
.modal-body
.form-group
= f.label :name, 'Name', class: 'form-label', style: 'width: 150px'
= f.text_field :name, class: 'form-control', style: 'width:200px;margin-right: 35px'
.modal-footer
%button{ type: "button", class: "btn btn-default pull-left", 'data-dismiss' => "modal" }
Close
= f.submit 'Create', class: 'btn btn-primary pull-right'
meine JS-Datei (nicht lachen):
$(document).ready(function($) {
console.log('ready'); # this I *can* see in the console
$('#edit_form').bind("ajax:success", function() {
console.log('great success') # this I *can't* see in the console.
});
});
Controller (zusätzlicher Spaß Tatsache: Der Modal ausgelöst wird in einer Ansicht für einen anderen Controller, nicht der eine der modalen, die ich tatsächlich versuche zu ändern):
So am ende möchte ich die "error" und "success" callbacks auffassen und mache damit (das versuche ich mir selbst zu überlegen). Was mache ich hier falsch?
Vielen Dank für Ihre Hilfe - es wird sehr geschätzt!
Versucht es. Arbeitet nicht :( – tomr