博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DWZ (JUI) 教程 dwz框架 刷新dialog解决方案
阅读量:5973 次
发布时间:2019-06-19

本文共 1134 字,大约阅读时间需要 3 分钟。

原文:

在DWZ中进行ajax表单提交后,通过回调函数来返回状态结果,以及返回是否需要刷新父页的navTabId。

       DWZ给我们提供了两个回调函数,一个是子窗口为navTab的navTabAjaxDone,一个是子窗口为dialog的dialogAjaxDone,但这两个回调函数都有同一样的缺陷:就是父窗口必须是navTab,也就是说只能刷新navTab,如果父窗口为dialog,则此父dialog是刷新不了的。
      如果我们是在一个弹出的dialog中,进行添加、删除和修改操作,操作完成后,这个dialog是无法刷新的。删除就在此dialog中完成,删除后只刷新不关闭当前dialog。添加和修改操作可能要再弹出一个dialog来完成,也就是说出现了二级dialog,操作完成后,需要关闭当前子dialog,刷新父dialog。
      针对这种情况 ,我们自己再添加一个回调函数,来适应这种情况需要。
      打开DWZ.ajax.js这个文件,找到dialogAjaxDone这个函数,在它的下方,我们添加一个新回调函数,假设取名为dialogAjaxDoneFather;

/*在对话框中操作数据,并刷新对话框*/ function dialogAjaxDoneFather(json) { DWZ.ajaxDone(json); if (json.statusCode == DWZ.statusCode.ok) { if (json.navTabId) { var dialog = $("body").data(json.navTabId); $.pdialog.reload(dialog.data("url"), { data: {}, dialogId: json.navTabId, callback: null }) } if ("closeCurrent" == json.callbackType) { $.pdialog.closeCurrent(); } } }
View Code

     这样我们在dialog中进行ajax表单提交,就可以使用这个dialogAjaxDoneFather回调函数了。

     删除操作:

View Code

     添加和修改的Form标记中

添加和修改的Form标记中[html]
View Code

      如果表单返回类型是iframeCallback ,需写成iframeCallback(this,callback); 即回调函数必须是 callback, 不能自定义名称,而且上述方法要写在页面内。

在回调json中,注意一定要返回需要刷新的父dialog的id,即
"navTabId":"dialogId" 

转载地址:http://chdox.baihongyu.com/

你可能感兴趣的文章
Pg异步复制系统Bucardo
查看>>
正则---基础
查看>>
惠普联手VMware共推桌面云解决方案
查看>>
panabit一款流量监管软件
查看>>
mysql基本常识整理
查看>>
windows server 2008 平台cluster+SQL2008部署<1>
查看>>
python中执行命令的3种方法小结
查看>>
Intel boards with integrated Matrox MGA G200 video will require VESA driver on 32bit RHEL 5
查看>>
mysql的登录管理
查看>>
Informatica 9.5.1实验记录
查看>>
Linux系统环境crontab定时任务设置参数实例及常用技巧
查看>>
VMware vSAN分布式存储安装配置
查看>>
linux下将不同线程绑定到不同core和cpu上 pthread_setaffinity_np
查看>>
远程桌面体验注意事项
查看>>
mysqldump常用方法
查看>>
Hibernate3的配置参数汇总
查看>>
表归档脚本脚本
查看>>
Linux 监视用户的使用情况
查看>>
js如何把一个时间戳转换成固定字符串格式的日期
查看>>
九大措施确保VMware View安全
查看>>