Volání redrawControl ve smyčce
- Failips
- Člen | 54
Ahoj,
mám formulár na odosielanie emailov a v snippete mám progressbar k aktuálnemu stavu odosielania emailov. Pri potvrdení formuláru do presenteru pošlem zoznam príjemcov, predmet správy a obsah správy. Následne v presenteri postupne vo for slučke posielam emaily jednotlivým príjemcom. Po odoslaní emailu sa počítadlo inkrementuje o 1 a potreboval by som urobiť update tejto hodnoty v snippete pomocou funkcie redrawControl(). Tá však vykoná refresh snippetu až na konci funkcie, ktorá je v callbacku form->onSubmit().
Neviete ako by to bolo možné implementovať tak, aby sa redrawControl() vykonal vždy keď ho zavolám?
Na internete sa mi nepodarilo nájsť riešenie a tak sa pýtam tu. Za každú radu ďakujem.
- Šaman
- Člen | 2663
AJAX a redrawControl()
zařizují jen vykreslení části
stránky bez refreshe adresy, ale v principu se stále jedná
o request-response. A vykreslí se vždy až na konci té response.
Takže potřebuješ vždy nový request (po každém odeslání zavolat
nějaký handleIncrement()
), nebo jiné řešení (vlastní JS a
nějak mu říct, že má přepsat tu hodnotu odeslaných mailů).
Editoval Šaman (16. 10. 2019 11:58)
- David Matějka
- Moderator | 6445
Jedna z možností je použít https://developer.mozilla.org/…-sent_events
- Failips
- Člen | 54
Ďakujem. Mohol by som poprosiť aj nejaké tipy ako by som to konrétne mohol naimplementovať? Neviem prísť na spôsob ako prepojiť callback form->onSubmit() a daný skript. Skúsil som ako cestu k skriptu zadať aj link na handle metódu v presenteri, v ktorom je daný callback ale ich scope je rozdielny a teda nevidia rovnaké hodnoty premenných.