Проблема с document.getElementById для iOS6
Я разработал мобильное приложение, используя Jquery Mobile. У меня проблема с этим приложением, когда при нажатии кнопки "Назад" HTML-код страницы не отображается. Первая страница загружается правильно. Но когда я захожу на эту страницу, нажмите кнопку "Назад", тогда она не загружается должным образом, что означает, что HTML не отображается на этой странице. В моем приложении все страницы имеют кнопку Назад, с помощью которой я могу вернуться на предыдущую страницу с помощью history.back(); функция.
HTML страницы:
<!DOCTYPE html>
<html>
<head>
<title>Register</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<script type="text/javascript" charset="utf-8" src="_appMobi/appmobi.js"></script>
<script type="text/javascript" src="jquery.mobile-1.3.1/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
function onDeviceReady() {
try {
AppMobi.device.setRotateOrientation("portrait");
var elem = document.getElementById("register_submit");
elem.innerHTML = '<input type="button" id="btn" name="btn_submit" onclick="SubmitRegistrationForm()" value="Submit" class="inputTypeSubmit" />'; //Error is here Error: Undefined
}
catch (e) {
alert(e.message);
}
}
function goback() {
history.back();
}
document.addEventListener("appMobi.device.ready", onDeviceReady, false);
</script>
</head>
<body> <a id="hrfBack" class="backClassbutton" rel="external" onClick="goback();" href="#">
<div id="register_submit">
</div>
<a href="#" rel="external" title="Login">Login</a>
</body>
</html>
Я получаю сообщение об ошибке при использовании elem.innerHTML ="некоторые HTML"
Так почему эта ошибка приходит? Или как это исправить?
Спасибо Дальвир
1 ответ
//Hmm. Try an rewrite the code.
<script>
//Something like this will help:
function onDeviceReady(){
try {
//Other codes....
var elem = document.getElementById("register_submit").innerHTML;
}
catch {
//other codes
}
}
</script>
Создайте свою кнопку в теге HTML body и убедитесь, что функция SubmitRegistrationForm находится в вашем теге. SubmitRegistrationForm() отсутствует. Вот почему вы получаете "неопределенную" ошибку