Cand adaug inca un echipament, butonul de adauga operatiune din blocul nou generat nu functioneaza. Cum il fac sa mearga ?
Cand dau click pe adauga operatiune ( si am adaugat deja 3 echipamente ), imi numara toate echipamentele de pe pagina si imi trece numarul acela la echipament, in loc de numarul echipamentului in cadrul caruia e prezent inputul. Cum il fac sa imi treaca numarul echipamentului ?
@Vali Ai dreptate, si pot sa jur ca am trecut peste cod de cel putin 10 ori. @iamntz Nu am mai folosit template-uri js pana acum dar am sa incerc.
Issue 2 still stands however
Despre numărătoare, aș zice că partea asta var j = $('.to-be-removed').size() ar trebui să fie un pic mai specifică. Revin cu un răspuns.
Ce s-a întâmplat:
nu ai nevoie de un iterator la fiecare click; poți lua numărul elementelor direct așa: groupIndex : $('#client-details fieldset').size(),
problema ta era că, numărând elementele la click, nu te puteai limita la un anumit context (e.g. într-un fieldset). Prin urmare, a apărut asta: $('.op-to-be-removed', $(this).closest('.op-field')).size()
Mersi pentru ajutor. Am reusit pana la urma sa fac ce vroiam Pentru incrementarea numarului operatiunilor am folosit varianta lui @iamntz iar pentru numarul echipamentului, tot din inputul de ops, am folosit var k = $($(this).closest('fieldset')).index();
Am actualizat penul cu ultima varianta.
Cat despre template-uri, am sa ma documentez mai mult, si poate pe viitor am sa le folosesc, dar pentru chestia asta am sa folosesc jquery fara ele.
@iamntz, interesanta chestia cu template, nu stiam. Eu pana acum puneam block-ul cu display: none, si dupa aia cu ii faceam clone() si il foloseam unde aveam eu nevoie. [<%= groupIndex %>] asta are vreo legatura cu template sau cum functioneaza?
Poți pune condiții, folosi variabile etc. Dezavantajul major este că toate variabilele folosite trebuiesc definite, deci nu poți refolosi un template cu două seturi ușor diferite de date (decât dacă adaugi condiții)
Cu toate astea, eu prefer un template ceva mai puțin pretențios și mai reutilizabil: mustache sau handlebars. De ce este mai reutilizabil? Pentru că îl pot folosi atât din PHP cât și din JS.