Utilizzando questa chiamata <a href="deleteDialog.html" data-rel="dialog" data-transition="pop" data-role="button" id='deleteDialog'>Delete</a>
per ottenere la seguente pagina di dialogo:JQuery Mobile: javascript inline data-role = "page" viene mantenuto quando la pagina viene rilasciata dal DOM?
<div data-role="page" id="deleteCompanyDialog">
<script type="text/javascript">
$("#deleteButton").live("click", function() {
alert("this alert increments");
});
</script>
<div data-role="header" data-theme="d">
<h1>Dialog</h1>
</div>
<div data-role="content" data-theme="c">
<h1>Delete Company</h1>
<p id="message"></p>
<a data-role="button" data-theme="b" id="deleteButton" >Sounds good</a>
<a href="company.jsp" data-role="button" data-rel="back" data-theme="c">Cancel</a>
</div>
</div>
sembra mantenere la live("click"..
vincolante da tutte le chiamate precedenti a questa finestra di dialogo e poi si lega ancora una volta la chiamata live
. Quindi, se chiamo la pagina 4 volte separate, alla quarta pagina di dialogo chiamata verrà visualizzata una finestra di 4 schermate di avviso. C'è un modo per avere il javascript ancora all'interno di data-role="page"
in modo che possa caricare con Ajax ma non incrementare il binding "live". Ho provato $("#deleteCompanyDialog").live("pagecreate"...
così come pageload
(un colpo lungo) che non funziona neanche.
L'aiuto sarebbe molto apprezzato.
data-role = "Dialog" è alla stessa posizione di data-role = "page", quindi se si tenta di inserirlo in una pagina, non funzionerà. –