Chodzi mi o taką najprostszą funkcjonalność jaką relizuje gem best_in_place. Znaczy klikam edit i komentarz zamienia się w pole edycji z tekstem komentarza, do tego powiedzmy pojawia się jakiś przycisk “zapisz”. Wszystko oparte o ajax, bez przeładowywania całej strony.
Przykład czegoś takiego tutaj: http://bipapp.heroku.com/users/68# (przy name mamy ‘edit me’ i tekst zamienia się w pole do edycji, u mnie byłby to textarea).
Pewnie skorzystam z tego gemu, ale chciałbym zrozumieć jak to działa na jakimś najprostszym przykładzie, szczególnie, że nie potrzebuję jakiś bajerów, tylko najprostszą funkcjonalność. Będę wdzięczny za pomoc, bo na razie nie bardzo mi wychodzi.
No to js, dajesz zdarzenie ze jak kliknie w jakies miejsce (div) cokolwiek to wstawiasz w to miejsce formularz, i ajax jendo i drugi samo w sobie dosc proste
bez dokladnego info co nie gra ciezko pomoc wklej co masz, gdzie jest blad itp
Pewnie głupie pytanie :), ale problem chyba jest taki, że nie wiem jak poprawnie wygenerować w jquery taki formularz. Mam zmienna @comment i normalnie w templacie html bym zrobił form_for(@comment), ale jak to wstawić przy pomocy jquery ? (zrobic partial i jakis render?)
myslisz 2 rzeczy zmienna @comment masz po stronei serwera a jquery robisz po stronie klienta nie ma dostepu do niej musisz sie posluzyc czyms np html5 data i w nim przekazac co chcesz do jquery a wnim odczytac te pola data, obejrzyj screencasty Rayan wszytskie o ajax, jquery itp uzywa czesto tej techniki by za pomoca data przekazac do js
To w sumie rozumiem, bo już korzystałem z data- , okazało się, że mój problem był w tym, że nie wiedziałem, że mogę wygenerować partial w jquery jak tutaj:
$("#comment<%=@comment.id%>").hide().after("<%=j render ‘comments/edit_form’%>")