我有一个phonegap应用程序。 有一个html文件是“index.html”,分为几个div。 每个div都像一个页面。
主页面(div)是登录页面,其中包含用户名和密码的输入文本,登录按钮和需要注册的注册按钮。
当用户没有输入其中一个字段并按下登录按钮时,应用程序通知他忘记输入其中一个字段,但在后台我看到它再次加载页面。 当我从Android设备按下“后退”按钮时,它会在用户输入一些详细信息时向我显示第一页。
另一件事是,当用户按下注册按钮时,它会导航到他的id为“registerPage”的寄存器div,现在当用户在其中一个字段中输入无效输入时,应用程序会提醒他一些但是在后台我看到它再次加载主页而不是停留在同一个div ..所以我做的是当用户没有输入有效输入时,我使用"$.mobile.navigate("#registerPage")
以保持在同一个div注册,但现在它加载主页,然后进入寄存器div。
我该如何解决?
答案 0 :(得分:1)
看起来导航正在重新加载页面。
考虑切换div,(类似于使用把手模板,不使用把手:-)例如。
你的HTML中的:
<body>
<div id="replacablediv" />
<script id="subheader-tpl" type="text/html">
<div class='subheader' id="subheaderdiv2">Status...</div>
</script>
</body>
在其他地方,你有一个可以替换的div,例如在jquery:
$('#replacablediv').html($('#subheader-tpl'));
因此,不是导航到div,而是用脚本模板块中的一个集替换可见的div。这样可以避免重新加载页面。 (如果不使用jquery,可以使用getElementById()来获取div / scripts。