Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: jquery dialog w dialogu
Forum PHP.pl > Forum > Po stronie przeglądarki
backen
Witam mam taki problem z dialogiem i nie mam pojecia jak go usunac.

  1.  
  2. <div id="dialog1">
  3.  
  4. <div id="dialog2">
  5.  
  6.  
  7. </div>
  8.  
  9.  
  10. <button>otworz dialog 2</button>
  11. $('#dialog2').dialog();
  12. </div>
  13.  
  14. <button>otworz dialog 1</button>
  15. $('#dialog1').dialog();


i wszystko sobie jadnie dziala ale gdy

otworze dialog 1 i dialog 2
do body dodja sie divy z dialogami i jest ok
ale gdy znow otworze dialog 1 jquerowski div dialog1 zmienia sie na display: block ale po otwarciu dialog2 tworzy sie nowy dialog2 i w body sa 3 dialogi.
jak zrobic zeby dialog2 wiedzial ze juz byl otwarty i nie tworzylo nowego dialogu?
toffiak
Może tak
backen

po zamknieciu dialog2 i dialog1 i przy probie otwarcia dialog1 $('#dialog2').dialog( "isOpen" ) zwraca falsz
toffiak
Proszę podać cały skrypt, ten podany w pierwszym poście jest niepoprawnie zagnieżdżony.

Zakładam że efekt końcowy ma wyglądać mniej więcej tak http://jsfiddle.net/Np4rA/10/
backen
  1.  
  2. <!doctype html>
  3. <html>
  4. <head>
  5. <meta charset="UTF-8">
  6. <title>Hello, HTML5!</title>
  7.  
  8. <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.0/themes/start/jquery-ui.css" type="text/css"/>
  9.  
  10. <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js"></script>
  11. <script type="text/javascript" src="http://code.jquery.com/ui/1.9.0/jquery-ui.js"></script>
  12.  
  13.  
  14.  
  15.  
  16.  
  17. </head>
  18. <body>
  19.  
  20.  
  21. <div id="dd1" style="display: none;">
  22. dialog 1
  23. </div>
  24.  
  25.  
  26. <button onclick="f1();"> otw. dialog 1 </button>
  27.  
  28.  
  29.  
  30. function f1(){
  31.  
  32. var trescdialogujestladowanadynamicznie = '<button onclick="$(\'#dd2\').dialog();"> otw. dialog 2 </button>';
  33. trescdialogujestladowanadynamicznie += '<div id="dd2" style="display: none;">';
  34. trescdialogujestladowanadynamicznie += 'dialog 2';
  35. trescdialogujestladowanadynamicznie += '</div>';
  36.  
  37.  
  38. $('#dd1').html(trescdialogujestladowanadynamicznie);
  39. $('#dd1').dialog();
  40. }
  41.  
  42. </script>
  43.  
  44. </body>
  45. </html>
  46.  



przerabiajac kod na prosty przyklad dochodze do wniosku ze wina jest taka ze skrypty sa ladowane jakby za kazdym razem otwarcia dialog 1
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.