博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DWZ中刷新dialog的方案解决
阅读量:5739 次
发布时间:2019-06-18

本文共 1047 字,大约阅读时间需要 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();        }    }}

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

删除操作:

添加和修改的Form标记中

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

"navTabId":"dialogId"

 

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

你可能感兴趣的文章
Exchange Server 2013 集成Office Web App
查看>>
内核内存池管理技术实现分析【转】
查看>>
Silverlight中枚举并加载客户端程序集
查看>>
重新定义数据库历史的时刻——时间序列数据库Schwartz认为InfluxDB最有前途,Elasticsearch也不错...
查看>>
mongodb的安装和使用
查看>>
AngularJS快速入门指南17:Includes
查看>>
[原创翻译]Protocol Buffer Basics: C#
查看>>
go 安装方法
查看>>
Azure China (3) 使用Visual Studio 2013证书发布Cloud Service至Azure China
查看>>
设置DataGridView行标题(最左边列)的宽度
查看>>
关键字super和this的使用及区别
查看>>
开源那些事儿 (二) - iToday开源项目计划
查看>>
Kotlin语法(基础)
查看>>
Windows 服务入门指南
查看>>
Javascript如何判断对象是否相等
查看>>
全民一心,共同抗灾!
查看>>
在线流程图制作工具
查看>>
Windows 8实用窍门系列:6.Windows 8中的Popup使用方式
查看>>
iOS:使用Github托管自己本地的项目代码方式二(客户端方式: Github Desktop)
查看>>
2017帝都租房攻略:昌平通州租金涨幅高达25%
查看>>