关于dwz框架的局部刷新问题
我新项目前台用dwz框架,其中有部分局部刷新,我对示例稍微进行了改动,就是我点击中间“海洋矿业企业生产经营情况”等时,右边jbsxBox会局部刷新,我点“添加”时,在navTab里打开一个新的页面(见图2),不是dialog。
<li><a class="add" href="/table/table!get.action?code=${code}&dataTableId=${dataTableId}" target="navTab" mask="true">
<span>添加</span>
</a>
</li>
图1 (中间菜单和右边列表是同一个页面)
图2
<form name="xxxForm" method="post" action="xxx.action" class="pageForm required-validate"
onsubmit="return validateCallback(this, jbsxBoxAjaxDone)">
...
</form>
jbsxBoxAjaxDone 方法是自定义的
function jbsxBoxAjaxDone(json){
DWZ.ajaxDone(json);
if (json.statusCode == DWZ.statusCode.ok){
var $parent = navTab.getPanel(json.navTabId);
var $pagerForm = $("#pagerForm", $parent);
var args = $pagerForm.size()>0 ? $pagerForm.serializeArray() : {}
var $box = $parent.find("#" + json.rel);
var form = _getPagerForm($box,args);
if (form) {
$box.ajaxUrl({
type:"POST", url:$(form).attr("action"), data: $(form).serializeArray(), callback:function(){
$box.find("[layoutH]").layoutH();
}
});
}
// divSearch(form,json.rel);
if ("closeCurrent" == json.callbackType) {
setTimeout(function(){navTab.closeCurrentTab(json.navTabId);}, 100);
} else if ("forward" == json.callbackType) {
navTab.reload(json.forwardUrl);
} else if ("forwardConfirm" == json.callbackType) {
alertMsg.confirm(json.confirmMsg || DWZ.msg("forwardConfirmMsg"), {
okCall: function(){
navTab.reload(json.forwardUrl);
},
cancelCall: function(){
navTab.closeCurrentTab(json.navTabId);
}
});
} else {
navTab.getCurrentPanel().find(":input[initValue]").each(function(){
var initVal = $(this).attr("initValue");
$(this).val(initVal);
});
}
}
}
json.navTabId 是图1 中“报表列表”页面的navTabId;json.rel 就是“jbsxBox”。
然后保存之后,列表变成下图的样子了。想问下这是什么原因?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你好,这个问题我也遇到了一个情况。就是查询时 跳出了框架