我使用过合金UI模态窗口。代码是:
YUI().use(
'aui-modal',
function(Y) {
var modal = new Y.Modal(
{
bodyContent:'test',
centered: true,
headerContent:headerContent,
modal: true,
render: '#testModal',
width: 631,
id:'modalSource',
destroyOnHide:true
}
).render();
modal.addToolbar(
[{
label: 'Add',
on: {
click: function() {
addData();
//modal.hide() works here but i need to close it inside addData..
}
}
},
{
label: 'Cancel',
on: {
click: function() {
modal.hide();
}
}
}
]
);
}
);
函数addData在一个不同的js文件中并进行Ajax调用,所以我需要传递模态窗口的id并在成功回调后关闭它。你对如何获取模态窗口的ID并在那里使用modal.hide有任何想法吗?谢谢
function addData()
{
$('#modalSource').hide();
}
答案 0 :(得分:0)
经过一些AUI教程,设法解决它。只需将模态窗口的实例传递给addData函数,然后调用hide()方法。
modal.addToolbar(
[{
label: 'Add',
on: {
click: function() {
addData(modal);
}
}
},
function addData(modalInstance)
{
//do needed stuff
modalInstance.hide();
}