0

我已经使用 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 ="some html" 时出现错误

那么为什么会出现这个错误呢?或者如何解决?

谢谢达尔维尔

4

1 回答 1

0
//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 正文标记中创建您的按钮,并确保 SubmitRegistrationForm 函数在您的标记中。缺少 SubmitRegistrationForm()。这就是您收到“未定义”错误的原因

于 2013-11-14T11:34:13.897 回答