Hello,
Lenne egy drupal 8-as gondom, remélem tudtok segíteni. Van egy modulom, amiben van egy saját, bundle nélküli entity type-om, a Membership. A probléma ott van, hogy ha az entity-hez tartozó form-on egy elemre (currency) rárakok egy #ajax callback-et (annyi dolga lenne, hogy a kiválasztott currency szerint átír egy szöveget, vagyis a szövegben lecseréli a currency-t a kiválasztottra):
https://gist.github.com/lonalore/2a304f89a8cee7e977cbb6100f486949#file-m...
... akkor működik is a dolog, de a validálás valamiért lefut. Nyilván azért mert kihagytam valamit, vagy nem is csinálom jól a dolgokat, nem tudom.
Az egyéni validálásaim itt vannak:
https://gist.github.com/lonalore/2a304f89a8cee7e977cbb6100f486949#file-m...
és alatta pedig ott az ajax callback metódus, ami átírja a currency-t a kiválasztottra:
https://gist.github.com/lonalore/2a304f89a8cee7e977cbb6100f486949#file-m...
Ha kitöltöm a formon a szükséges mezőket, akkor nincs gond, lefut az ajax, és cseréli szépen a szöveget (vagyis a form elemet), de ha üresen van hagyva legalább 1 kötelező mező, akkor a validálás bekavar az ajax-nak.
Találkozott már valaki hasonlóval?
Itt van a repo, ha valakinek könnyebb úgy, hogy látja is működés közben:
https://www.drupal.org/node/2297439/git-instructions/8.x-2.x
A form-ról itt egy képernyőkép:
https://gist.github.com/lonalore/2a304f89a8cee7e977cbb6100f486949#gistco...
(tehát van az Amount-hoz tartozó currency dropdown list, ha változik, akkor a Trial period-nál lévő currency is változna)
A segítséget előre is köszönöm! Címet nem tudtam jobbat kitalálni, nevezzétek át nyugodtan. :)
Közben kiagyaltam egy működő
Közben kiagyaltam egy működő megoldást, mégpedig:
Ezzel tudom vizsgálni a validálásomnál hogy ténylegesen el lett-e küldve a form, vagy csak ajax hívás történt. Így a validálás nem szakítja meg az ajax hívást.
Ha valakinek van szebb megoldása, javaslata, azt azért szívesen veszem. Köszönöm! :)
kisfazek.hu