Я пытаюсь реализовать случайный ответ на странице, загруженной с помощью вызова ajax. Я использую jquery mobile инклюзивный макет. Поэтому я добавил простой java-скрипт в контейнер div data-roll и инициализировал его через $(document).live или $(document).on или $(document).bind, как и должно быть в соответствии со многими ответами или предложениями здесь . Все работает нормально, когда я использую обычную функцию оповещения. Нравится
<script>
$(document).live('pageinit', "#answerPage", function (event) {
alert("Page Initialized");
});
</script>
Также мой скрипт отлично работает, когда я добавляю его на обычную html-страницу.
Поэтому, когда я вместо предупреждения использую функцию getanswer(), она не работает. Что я здесь делаю неправильно? Спасибо за вашу помощь.
<!DOCTYPE html>
<html>
<head>
<title>Title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
</head>
<body>
<div data-role="page" id="answerPage" data-theme="b" data-add-back-btn="true">
<script>
$(document).on("pageinit", "#answerPage", function(event) {
function getanswer() {
var r_text = new Array ();
r_text[0] = "A";
r_text[1] = "B";
r_text[2] = "C";
r_text[3] = "D";
r_text[4] = "E";
r_text[5] = "F";
r_text[6] = "G";
var i = Math.floor(7*Math.random());
document.getElementById("ShowAnswer").innerHTML = r_text[i];
};
});
</script>
<div data-role="header" data-position="fixed" data-theme="b">
<div id="ShowAnswer"> </div>
</div>
</div>
</body>
</html>