扩展 jQuery UI Dialog 打开功能
是否可以扩展 jQuery UI 对话框的“打开”回调函数?例如,我正在使用另一个名为“confirmDialog”的对话框来扩展我的 modalDialog。打开 modalDialog 对话框时,我正在运行几个函数,我想将它们转移到确认对话框中,同时还添加另一个函数。这是代码:
// Default settings for the modal dialog
moDefaults : {
autoOpen: 'false',
modal: true,
draggable: false,
resizable: false,
buttons: {},
title: 'Title',
width: 'auto',
open: function(getDataOnOpen){
// Add open class
jQuery(this).addClass('open_dialog');
// Add classes to action button
var buttonPane = jQuery(this).next();
jQuery(buttonPane).find('button:first').addClass('accept').addClass('action');
// Hide the default dialog close button
jQuery('.ui-dialog-titlebar-close').hide();
// IE hack
jQuery(this).css('overflow','hidden');
// Ajax call to make on open
getDataOnOpen;
},
close: function(){
// Remove open class
jQuery('.ui-dialog').removeClass('open_dialog');
}
},
modalDialog : function(options, dialogId){
if(options){
jQuery.extend(true, mw.moDefaults, options);
}
jQuery(dialogId).dialog(mw.moDefaults);
},
confirmDialog : function(options){
var defaults = {
dialogClass:'confirm_dialog',
minWidth: 255,
modal: true
};
var settings = $.extend(mw.moDefaults, defaults, options);
$.extend(mw.modalDialog(settings,'#conf_dialog'));
}
提前致谢!
Is it possible to extend the "open" callback function for the jQuery UI dialog? For example, I am extending my modalDialog box with another called confirmDialog. When opening the modalDialog dialog, I am running a couple of functions that I want to carry over to the confirmDialog but also add another function with it. Here is the code:
// Default settings for the modal dialog
moDefaults : {
autoOpen: 'false',
modal: true,
draggable: false,
resizable: false,
buttons: {},
title: 'Title',
width: 'auto',
open: function(getDataOnOpen){
// Add open class
jQuery(this).addClass('open_dialog');
// Add classes to action button
var buttonPane = jQuery(this).next();
jQuery(buttonPane).find('button:first').addClass('accept').addClass('action');
// Hide the default dialog close button
jQuery('.ui-dialog-titlebar-close').hide();
// IE hack
jQuery(this).css('overflow','hidden');
// Ajax call to make on open
getDataOnOpen;
},
close: function(){
// Remove open class
jQuery('.ui-dialog').removeClass('open_dialog');
}
},
modalDialog : function(options, dialogId){
if(options){
jQuery.extend(true, mw.moDefaults, options);
}
jQuery(dialogId).dialog(mw.moDefaults);
},
confirmDialog : function(options){
var defaults = {
dialogClass:'confirm_dialog',
minWidth: 255,
modal: true
};
var settings = $.extend(mw.moDefaults, defaults, options);
$.extend(mw.modalDialog(settings,'#conf_dialog'));
}
Thanks in advance SO!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论