W czym się robi zaawansowane formularze?

0

Jak się projektuje aplikacje, w których zachodzi dynamiczne dodawanie złożonych pól ? Np. dodawanie nowych informacji o wykształceniu itp. Tak aby nie robić tego dwa razy - przy wypluwaniu html z backendu z bazy danych oraz JSem gdy użytkownik kliknie "plusik". Jakie frameworki używacie aby to było w miarę przyjemne?

0

jQuery i jakiś "select2" z bootstrapa?

0

No nie wiem. Chciałbym tylko jeden raz rysować formularz dla obu przypadków (dynamicznie dokładane krotki przez usera w przypadku kliknięcia na plusik oraz przy odczycie zapisanych danych z bazy). Czyli musiałby być jakiś ViewModel Javascriptowy wypełniany wartościami przez backend i w JavaScripcie na podstawie tego rysowany formularz. Unika się wtedy dodatkowego pisania generowania HTML przez backend.

0

Czyli: nawal bibliotek i dopisz kilkanaście/dziesiąt linii kodu obsługującego "jakiś ViewModel", żeby uniknąć napisana 3 linijek kodu JS, który z jakiegoś powodu wydaje Ci się nieładny ;)

0

Chyba się nie rozumiemy do końca.
Załóżmy że robimy formularz z wykształceniem - czyli może być n-pozycji, składających się z textarea i jakimiś inputami dotyczących zakresu dat.
Część JS musi być zrobiona, bo użytkownik może nacisnąć plusik aby dodać pustą krotkę i wypełnić. Teraz po zapisie do bazy danych, trzeba "odmalować" formularz.
I np. w PHP dokładnie tę samą krotkę z wartościami muszę wydrukować. Czyli przy jakichkolwiek zmianach, należy zmienić kod PHP oraz JS. Chciałbym uniknąć odmalowywania formularza w backendzie i robić to tylko w JS. Tylko wtedy trzeba jakoś przekazać te zapisane wartości z bazy. Wydaje mi się, że takie podejście będzie najlepsze, ale mogę się mylić.

0

Nie koniecznie musisz zmieniać backend. Możesz zrobić, że formularz generuje Ci zserializowany widok (np. JSON albo XML) i to zapisywac do bazy w zunifikowany sposob. W JS mozesz podmienic submit wszystkich przyciskow, wiec kod bedziesz musial zmieniac tylko w jednym miejscu albo nigdzie jesli dobrze backend zaprojektujesz (np. tworzenie formularza przez przeklikiwanie na stronie).

0

brzmi rozsądnie, czyli biorę jsona z krotek z bazy danych i wstawiam ją do zmiennej JS. W ready odmalowuje formularz odpowiednio na podstawie tego JSona. W backend przechwytuję odpowiednio formularz i zapisuję do bazy. O to chodziło?

0

Albo jQuery (lub inne podobne) i trochę pisania, albo gotowce pokroju Devexpress (lub inne podobne) i mniej pisania

0

http://www.sanwebe.com/2013/03/addremove-input-fields-dynamically-with-jquery

naucz się najpierw js'a potem nie będziesz musiał zadawac takich pytań. Formy to zwykłe html'owe tagi, możesz je kopiować, budować, wklejać.

0

@niezdecydowany
A ja polecam naukę czytania. Może Ci pomogę - chodzi o uniknięcie odrysowywania formularza przez backend (czyli powielanie roboty).

1 użytkowników online, w tym zalogowanych: 0, gości: 1