jQuery Mobile弹出对话框后不刷新原页面,保持原页面内容不变
来源:互联网 发布:中信出版的经管 知乎 编辑:程序博客网 时间:2024/05/17 07:52
使用jQuery Mobile开发移动应用程序时,在一个页面上弹出对话框,关闭对话框后,发现原来的页面被刷新了。如果原页面上有一些已经选择或者填写的数据,则这些数据就会丢失。这时候,就需要对对话框的返回按钮做一些处理,让页面返回到对话框父页面在弹出对话框执勤的状态。
弹出对话框的按钮一般写法如下:
<a href="/Dialogs/MyDialog.htm" data-role="button"data-rel="dialog" data-transition="pop">弹出对话框</a>
对话框页面的返回按钮如下:
<a href="~/Home/Index" data-icon="back" data-role="button">返回列表</a>
上面的这种方式,返回后,Index页面上的数据都因为刷新丢失了!
特别是当Index页面上需要点击按钮通过Ajax加载列表数据时,点击返回关闭对话框后,Ajax加载的列表数据全部丢失,非常头疼!
通过在StackOverFlow网站上搜索,找到了答案!解决方法非常简单:将对话框页面的“返回”按钮修改成如下方式即可:
<a href="~/Home/Index" data-icon="back"onclick="$('.ui-dialog').dialog('close'); return false;" data-role="button">返回列表</a>
需要特别注意 onclick="$('.ui-dialog').dialog('close'); return false;",后面的 return false 让承载对话框的页面回到原来的状态。【这是阻止浏览器默认行为,也就是超链接不跳转】
帖子地址:http://stackoverflow.com/questions/10286562/jquery-mobile-closing-dialog-reloads-calling-page
重要附加:
后来自己又做了好几次实验发现,要保持原页面(对话框的父页面)内容不变,原页面需要完全加载,即跳转到对话框父页面的连接中要添加data-ajax="false"属性。这样,对话框的父页面是完全加载的,关闭对话框页面后,父页面的内容不变。
- jQuery Mobile弹出对话框后不刷新原页面,保持原页面内容不变
- jQuery Mobile弹出对话框后不刷新原页面,保持原页面内容不变
- Salesforce -- 自定义按钮弹出VisualForce页面,页面关闭后刷新原页面
- 不刷新页面弹出对话框
- JSP页面刷新跳转返回之后 保持原页面位置
- 打开新页面原页面不刷新
- 关于jQuery Mobile页面跳转后网页不刷新问题
- 在长aspx页面刷新后保持位置不变
- 页面刷新后保持滚动条的位置不变
- 页面刷新后保持滚动条的位置不变
- WinForm中的DataGrid控件在刷新后保持原滚动条位置不变
- 如何关闭弹出页时,使原页面自动刷新
- ios返回刷新原页面
- 弹出新页面,输入数据后返回原页面
- 网站js弹出提示后原页面css样式丢失
- 弹出窗口后点击确定,原页面的格式改变
- 页面刷新后导航不变
- 登陆后返回原页面
- 关于VideoView播放本地资源报错:Unable to open content:***;java.io.IOException: setDataSource failed
- 最小二乘法拟合方位角与径向速度的关系
- Java note
- 常用的Javascript设计模式
- 纯ant命令行打包android apk之图文从原理角度完全详解android打包过程(打包系列教程之一)
- jQuery Mobile弹出对话框后不刷新原页面,保持原页面内容不变
- IOS点击UITextField不弹出键盘但是可以输入粘贴。。。
- validate plugin 插件说明
- IOS UITextView和UITextFiled的区别
- 费伯纳西数列(Fibonacci)的输出
- I2C死锁原因及解决方法
- C语言跨文件引用
- 数据结构-单链表的java实现
- UVA 511 Do You Know The Way to San Jose