Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jquery][ui] Jak zapobiec powielaniu dialog-boxów po przeładowaniu taba?, Zawartość tabów generowana dynamicznie przez ajaxa.
tr!ckle
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 2
Dołączył: 12.05.2009

Ostrzeżenie: (0%)
-----


Witam.
Otóż mój problem wygląda następująco:
Mam kilka tabów i w jednym z nich są dialog-boxy (a w nich formularze). Problem polega na tym, że te dialog-boxy są generowane dynamicznie, więc wywalenie ich poza taby odpada. Druga rzecz jest taka, że gdy zakładka (tab) mi się przeładuje, wówczas dialog-boxy się powielają, a co za tym idzie - formularze również. Wiąże się to z tym, że po kilku przeładowaniach taba, wysyła mi się tyleż razy formularz.
Czy da się jakoś zapobiec temu powielaniu? Najlepiej bez rezygnowania z przeładowywania tabów.

Z góry dziękuję za pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
tr!ckle
post
Post #2





Grupa: Zarejestrowani
Postów: 21
Pomógł: 2
Dołączył: 12.05.2009

Ostrzeżenie: (0%)
-----


Witam.
Otóż zapoznałem się z podanym tematem i tak jak jest tam wspomniane, nie mogę wrzucić tego projektu w sieci. Ponadto zdawało mi się, że wypowiadać się będą tutaj osoby znające jquery ui, a przynajmniej elementy dialog i tabs. Mam jednak remedium na ten problem, mianowicie podobny temat na forum jquery (niestety bez zadowalającego rozwiązania): http://forum.jquery.com/topic/dialog-div-s...ge-is-refreshed

Mój problem jest identyczny. Dodam tylko, że na tych dialog-boxach mam formularze, które są wysyłane kilkakrotnie niekiedy, a tego chcę uniknąć.

Mam też pewien pomysł jak temu zaradzić. Umieszczę elementy div - dialog-box na zewnątrz tabsów i tym samym zainicjalizuję dialogi na zewnątrz, a przy ładowaniu taba, wrzucę formularz do dialog-boxów przez js. Jak będę miał jakieś rezultaty to napiszę.

Niemniej jak ktoś ma inne pomysły (być może lepsze), to będę wdzięczny za pomoc.

[EDIT]
No niestety jest mnóstwo błędów przy tego typu rozwiązaniu, które zaproponowałem. Między innymi z synchronizacją skryptów, co powoduje na przykład niewypełnienie danymi formularza (pobrane przez ajax) itp. W tym momencie nie opłaca mi się zmieniać całej struktury skryptu bez gwarancji na sukces, dlatego byłbym wdzięczny, jeśli ktoś miał podobny problem i poradził sobie w jakiś sprytny i elegancki sposób, i mógł się nim ze mną podzielić

[EDIT 2]
Znalazłem tymczasowe rozwiązanie, nie wiem czy najlepsze, w każdym razie działa:
Przed przeładowaniem taba dla każdego dialog-boxa wywołuję kolejno metody destroy oraz remove. Przeładowanie taba jest z odpowiednim timeoutem (2-3 sekundy)

Ten post edytował tr!ckle 3.12.2010, 00:26:54
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.10.2025 - 12:57