2012-03-26 22 views
6

mam pojedynczy plik .html, który wygląda podobnie do następującego:Programowo otworzyć okno dialogowe, w JQuery Komórka

<div id="myPage" data-role="page"> 
    <div data-role="header"> 
    <a href="#" data-icon="arrow-l" data-iconpos="notext" class="ui-btn-left jqm-home" onclick="backButton_Click();">Back</a> 
    <h1>My App</h1> 
    </div> 

    <div> 
    <input id="saveButton" type="button" value="Save" onclick="doStuff()" /> 
    </div> 

    <script type="text/javascript"> 
    function doStuff() { 
     var updatedText = getUpdatedText(); 
     $("#myMessage", "#myDialog").html(updatedText);      
     $.mobile.changePage("#myDialog", { role: "dialog" });  
    } 
    </script> 
</div> 

<div id="myDialog" data-role="page"> 
    <div id="myMessage"></div> 
    <input id="button1" type="button" value="Button 1" data-theme="b" onclick="someJS1();" /> 
    <input id="button2" type="button" value="Button 2" data-theme="c" onclick="someJS2();" /> 
</div> 

Kiedy „DoStuff()” nazywa, chcę ustawić niestandardowy komunikat w tekście z mojego okna dialogowego i otwórz okno dialogowe. Z jakiegoś powodu nie mogłem otworzyć myDialog. Dla mojego życia nie mogę zrozumieć, co robię źle. Sprawdziliśmy treść zamieszczonych tutaj: http://jquerymobile.com/demos/1.0a4.1/docs/pages/docs-pages.html

+1

O, mój link do dokumentacji idzie do wersji, która ma około jednego roku. Upewnij się, że używasz wersji 1.0 lub nowszej, ponieważ każda wersja przed 1.0 była wersją rozwojową. – Jasper

Odpowiedz

19

myślę, że trzeba ustawić się w rolę strony dialogowym

<div id="myDialog" data-role="dialog"> 
    <div id="myMessage"></div> 
    <input id="button1" type="button" value="Button 1" data-theme="b" onclick="someJS1();" /> 
    <input id="button2" type="button" value="Button 2" data-theme="c" onclick="someJS2();" /> 
</div> 

a następnie otwórz okno z

$.mobile.changePage("#myDialog"); 

See Fiddle http://jsfiddle.net/kYsVp/2/

+3

Jeśli ustawisz okno dialogowe 'rola: '' 'w obiekcie opcji' $ .mobile.changePage() ', to przesłoni ono aktualny atrybut' data-role' elementu i użyje określonej roli. Dokumenty tutaj: http://jquerymobile.com/demos/1.1.0-rc.1/docs/api/methods.html – Jasper

Powiązane problemy