Я часами пытался реализовать это, и я близок, но не там.
Цель проста.Иметь функциональное всплывающее оповещение, которое можно использовать из любого места в приложении.
Например, у меня есть код, в котором я хочу показать всплывающее окно после простого теста if:
if (message.type == "Error") { //lets show a popup !!!
$.mobile.changePage( "alert.html", {
type: "post",
data: "alert_title="+message.type+"&alert_message="+message.content,
transition: "pop",
role: "dialog",
reloadPage:true
});
Как видите, я передаю некоторые пользовательские данные.
Вот код моей страницы оповещения:
<!DOCTYPE html>
<html>
<head>
<title>Alert</title>
<!--#include virtual="header.inc" -->
<script>
alert("test");
$('#alert_dialog').live('pageinit', function (event) {
$("#alert_title").text($.urlParam('alert_title'));
$("#alert_body").text($.urlParam('alert_message'));
});
</script>
</head>
<body>
<div data-role="page" id="alert_dialog">
<div data-role="header">
<h1>Alert</h1>
</div>
<div data-role="content">
<h1 id="alert_title">alert title</h1>
<p id="alert_body">alert body</p>
<a href="#" data-role="button" data-rel="back">OK</a>
</div>
</div>
</body>
</html>
Проблема, с которой я работаю, заключается в том, что на странице alerts.html
не выполняется ни один javascript, поскольку он внедряется в DOM.Почему jQuery Mobile даже позволяет нам отправлять POST-данные, используя $.mobile.changePage
, когда мы не можем их использовать?
Любая помощь или предложения?