Ich baue eine neue App mit 3.0.0.beta3. Ich versuche einfach, eine js.erb-Vorlage für eine Ajax-Anfrage für die folgende Aktion (in publications_controller.rb) zu rendern:
%Vor%Momentan ist meine get_pubmed_data.js.erb Vorlage einfach
%Vor%Der Server antwortet mit dem folgenden
%Vor%was völlig in Ordnung ist, außer dass nichts im Browser passiert, wahrscheinlich weil der Inhaltstyp der Antwort 'text / html' statt 'text / javascript' ist, wie der Antwortkopf hier teilweise wiedergegeben zeigt:
%Vor%Ist das ein Fehler oder fehlt mir etwas? Danke für Ihre Hilfe!
Mit Rails 3.1.1 Ich stieß auf ein ähnliches Problem. Meine Antwort würde als HTML rendern, obwohl ich format.js explizit in meinem Controller erwähnt hatte. Es stellte sich heraus, dass das Problem darin bestand, dass ich jquery.js-Dateien in meinen Assets hatte und von der Vorlage geladen wurde. jquery-rails benutzt eine eigene Kopie von jquery und diese geladenen Dateien haben auch dazu geführt, dass rails die Antwort aus irgendwelchen Gründen als html rendern. Könnte einem anderen helfen, bei diesem Problem festzuhalten.
hatte ein ähnliches Problem, bei dem die js-Datei als Textdatei geladen wurde, aber am Ende waren es nur meine Skripte, die in der falschen Reihenfolge geladen wurden.
ersetzen
%Vor%mit
%Vor%Auch zu beachten, die getscript-Methode
ie ersetzen:
%Vor%mit:
%Vor%Tags und Links ruby-on-rails-3 javascript ajax content-type