Last teilweise mit jquery und Schienen
Ich bin neugierig, was der beste Weg, zu laden, Schienen teilweise mit jquery. Bisher habe ich versucht, eine Lösung nicht funktioniert:
$('#imagecontent').load('/newsletters/_image_gallery.html.erb', function() {
alert('Load was performed.');
});
Ist die beste Lösung zum erstellen einer separaten Aktion und/oder controller für dies und das einrichten einer route? Im Fragen, weil so die erste Lösung die Arbeit scheint einfach, vielleicht nicht so erholsam.
Dank.
- nur als Anmerkung, die Sie nicht verwenden können .html() zu laden, Sie sind Teiltöne entweder. Selbst wenn Sie nennen es mit ruby-code. Dies ist, weil es wird die gesamte form in Anführungszeichen setzen und ruiniert alles. Ich würde vorschlagen, einen anderen Weg, wenn ich wusste, dass man, obwohl das, was ich Suche für mich atm.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie nicht in der Lage sein, um Zugriff auf Template-Dateien (.erb) von HTTP-Anfragen, dies ist sehr schlechte Praxis. Ich schlage vor, Sie setzen Sie auch außerhalb der web-Server Weg und Zugang zu Ihnen nur durch Ihre Anwendung.
Ich bin mir nicht sicher über die Schienen, aber ich nehme an, Sie müssen erstellen Sie einen separaten controller (oder was auch immer) zu tun.
BEARBEITEN dies ist weil .erb-Dateien werden Eingebettete Ruby-Dateien, und wenn Sie versuchen, Sie zu beantragen, erhalten Sie alle unerwünschten Daten, wie
<%= page_title %>
, dass Sie nicht wollen, um zu zeigen, das Nutzer. Daher müssen Sie diese geben .erb-Dateien durch Ihre Rails-Anwendung so, dass Sie korrekt interpretierte, in HTML.Den Grund, dass der code nicht funktioniert, ist, dass die Schienen nicht aussetzen anzeigen von Dateien außerhalb. Zu erreichen, was Sie wollen, müssen Sie eine Aktion zu machen, müsste diese teilweise:
Gibt es auch ein plugin namens jRails ersetzt die standard-ajax-Helfer (die mit Prototypen) mit entsprechenden jquery-orientiert sind. In Ihrem Fall würden Sie so etwas wie
Und noch mehr, in Rails 3, die Sie nicht benötigen. Sehen dieser link.
Hier ist, was Sie wollen:
http://www.slideshare.net/JamesEdwardGrayII/ajax-with-jquery-in-rails
Andere alternative:
Mit Schienen 3, die Sie tun könnten...
controller
Ansicht haml.erb(html.erb) oder js.erb
Könnten Sie versuchen, diese, wenn rails 2 (nur Prototypen zur Verfügung, es sei denn, noConflict Hinzugefügt)...
In der Steuerung
Rufen Sie Ihren js
Ihre Funktion...
Bin ich einverstanden mit neutrino könnte dies besser gehandhabt werden über eine Aktion.
Hoffe, das hilft