wyskakujące okienko jQuery Mobile nie otwiera się na .popup („otwarte”)

Próbuję użyć wyskakującego okienka jQuery Mobile 1.3.1, aby ostrzec użytkownika, gdy dane logowania są fałszywe. Zacząłem od podstawowego szablonu z dokumentacji jquerymobile, ale nie mogłem z nim współpracować$('#popupBasic').popup('open'); Jeśli użyję tego w ten sposób;

     <div data-role="page">


        <div data-role="header" data-tap-toggle="false">
        </div><!-- /header -->

        <div data-role="content">

            <a href="#popupBasic" data-rel="popup">Tooltip</a>
            <div data-role="popup" id="popupBasic">I will change this text dynamically if this popup works</div>


        </div><!-- /content -->
    </div><!-- /page -->

Działa dobrze, gdy klikam link Tooltip. Ale w moim przypadku nie ma żadnego kliknięcia, więc próbuję tego;

                if(retVal){
                    $.mobile.changePage('index');
                }
                else{                    
                    $('#popupBasic').popup();
                    $('#popupBasic').popup("open");
                }

jest to po tym, jak moja funkcja logowania w języku ajax wywołuje wywołanie zwrotne, więc wartość retVal jest prawdziwa, jeśli nie ma żadnych błędów, fałsz, jeśli istnieje (iw tym momencie próbuję wyświetlić popup). Przy okazji jest cała moja część js

 $(document).on('pageinit', function(){});

więc czekam, aż jquerymobile będzie gotowy na stronę.

Co się stanie, gdy to zrobię, jest na linku przeglądarki internetowej zmienia się jako

http://localhost/login#&ui-state=dialog

ale nie pokazuje pop-upu. Po kilku odświeżeniach i buforowaniu zaczyna się pokazywać. W systemie iOS zdarza się to samo, ale na Androidzie czasami zmienia ono połączenie.

Byłbym naprawdę szczęśliwy, gdyby ktoś mógł mi pomóc rozwiązać ten problem. Z góry dziękuję.

questionAnswers(1)

yourAnswerToTheQuestion