Gute Art das zu handhaben, inline-Bearbeiten-Formular mit Rails und jQuery
Habe ich eine Liste der Elemente, die angezeigt wird, in eine Reihe von DIVs. Wenn jemand klickt auf einen link "Bearbeiten" möchte ich ersetzen den div mit einem Formular, lassen Sie Sie Bearbeiten Sie den Inhalt des Elements auf eine nette Weise.
Ich versuche zu denken, der ideale Weg, dies zu behandeln. Erstelle ich einen versteckten edit-form für jedes Element in der Liste aus, und Haken Sie den link Bearbeiten, um es zu offenbaren, wie diese:
<div>
<a href="#">edit</a> Item One
<div id="edit_1202" class="editform">Edit form goes here</div>
</div>
<div>
<a href="#">edit</a> Item Two
<div id="edit_2318" class="editform">Edit form goes here</div>
</div>
Oder gibt es einen besseren Weg, um die Daten abzurufen, und legen Sie die Formular - HTML-Code in der richtigen Stelle? Denken Sie daran, ich bin mit jQuery, so dass ich nicht verwenden können, den Prototyp Helfer.
Dank!
InformationsquelleAutor Tim Sullivan | 2009-04-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den kürzesten Weg zu einer Antwort ist, wie so oft der Fall ist, Ryan Bates' Railscasts. Er hat eine episode auf mit jQuery Rails. Während er nicht speziell decken Sie es, eine einigermaßen elegante Lösung gefertigt werden können-von den Grundlagen, die er zeigt.
In meinem Fall, wird der link Bearbeiten würde überschrieben werden, senden Sie eine ajax-Anfrage an den server, der gibt javascript zu bauen, teilweise mit dem form-code Bearbeiten. Einfach, wenn man weiß, wie!
InformationsquelleAutor Tim Sullivan
Ich denke, das ist, was du suchst: jquery edit in place plugin
http://davehauenstein.com/code/jquery-edit-in-place/example/
http://code.google.com/p/jquery-in-place-editor/
Ich habe vor kurzem verwendet, und es funktioniert. Platz. Schauen Sie sich die Beispiele im ersten link oben.
Ist das wirklich nicht, was Sie suchen, möchten Sie vielleicht laden Sie eine remote-Seite mit
jquery ajax laden. Dann würden Sie in der Lage sein, unabhängig von der Art der form-Elemente, die Sie wollen.
http://docs.jquery.com/Ajax/load
InformationsquelleAutor jimiyash
Ich würde vorschlagen, mit einem plugin in irgendeiner Form. Dies ist ein ziemlich standard-feature, warum recode etwas, was jemand schon geschrieben??? Überprüfen Sie heraus die jeditable plugin.
Nach der Lektüre Ihr Kommentar, ja. Würde ich wahrscheinlich machen, dass mit jQuery, wie Sie beschreiben, wenn Sie wollten, um alles editierbar sein auf einmal. Ich glaube nicht, dass ich gesehen habe ein plugin, dass die Griffe mehr als ein Feld gleichzeitig.
InformationsquelleAutor Steve Klabnik