rails 3 - ajax form ajax: Erfolgsereignis wird nicht aufgerufen

8

Nach einiger Fehlersuche kann ich nicht herausfinden, warum der ajax: success Callback meines Formulars nicht in Rails 3 aufgerufen wird.

Nachfolgend ist der Code, der letztendlich aus meiner Sicht generiert wurde:

JS-Code:

%Vor%

Ajax-Form:

%Vor%

Der Logik folgen, die in der Aktion auftritt, an die das Formular sendet:

%Vor%

Ich habe Firebugged diese gesamte Anfrage / Antwort:

%Vor%

Die Antwort lautet wie erwartet:

%Vor%

200 OK Antwort sollte "Ajax: Erfolg" in meinem JS auslösen ... aber das passiert nicht. Irgendwelche Gedanken? Der Fehlerrückruf wird auch nicht getroffen ...

    
deruse 23.01.2012, 10:41
quelle

4 Antworten

10

Ich hatte das gleiche Problem. Nach 90 Minuten der Suche habe ich es endlich zur Arbeit gebracht, indem ich Folgendes benutze:

%Vor%

Kredit an: Ссылка

Ich habe erstellt und dann versucht, das, was ich gerade erstellt habe, zu löschen, alles über Ajax-Anfragen. hoffe, das kann jemandem helfen.

    
user1371138 18.11.2012 23:03
quelle
3

Nachdem ich viel mehr Zeit damit verschwendet habe, habe ich es endlich zum Laufen gebracht, indem ich folgendes gemacht habe:

1) Die Bindung 'ajax: success' wurde an application.js und nicht an die Tags meiner partiellen Datei verschoben.

2) Ändern von $ (function () {}) in jQuery (function ($) {})

Ich bin mir nicht ganz sicher, warum die beiden obigen Schritte das Problem lösen, aber sie tun es. Hoffe es hilft!

    
deruse 23.01.2012 13:38
quelle
2

Ich hatte genau das gleiche Problem, und Ihre eigene Antwort auf Ihre Frage hat mir ebenfalls geholfen. Aber ich denke, das ist nur ein Workaround für das eigentliche Problem. Es gibt zwei mögliche Situationen, in denen dieses Problem auftritt:

  1. Sie haben ein Upgrade von Rails 2 auf 3 durchgeführt und verwenden weiterhin die Prototypbibliothek (siehe Rails 3 AJAX Remote-Formular Rückrufe )

  2. Sie haben zwei jQuery-Bibliotheken eingebettet (das war mein Problem)

Schauen Sie also in Ihren HTML-Quellcode, wenn eine andere Bibliothek in Konflikt mit jQuery steht.

    
Max Schmidt 26.05.2013 11:56
quelle
1

Es funktioniert mit Formular-ID wie:

%Vor%     
prashantsahni 07.02.2013 09:45
quelle

Tags und Links