首先上代码:
$('#serviceChangeDialog').dialog({
title : 'title',
onClose:function(){
$('#serviceChangeDialog').dialog('close');
},
onLoad : function() {
},
buttons : [ {
text : '确定',
iconCls : 'icon-edit',
handler : function() {
}
},{
text : '取消',
iconCls : 'icon-cancel',
handler : function() {
$('#serviceChangeDialog').dialog('close');
}
}]
});
此时在页面上面关闭该窗口时,会报错:Maximum call stack size exceeded
将自定义的onClose去掉,这个问题不再出现,删除的代码部分如下:
onClose:function(){
$('#serviceChangeDialog').dialog('close');
}
这里的原因应该是如果是#id的方式对dialog进行操作,若有自定义的onClose事件,则会递归调用该方法,以至于导致死循环而报错;对于用临时div生成的dialog则无此问题。