Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/455.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将参数传递给jQuery小部件?_Javascript_Jquery Ui_Client Side_Jquery Widgets - Fatal编程技术网

Javascript 如何将参数传递给jQuery小部件?

Javascript 如何将参数传递给jQuery小部件?,javascript,jquery-ui,client-side,jquery-widgets,Javascript,Jquery Ui,Client Side,Jquery Widgets,这是一个很难回答的问题 假设我点击一个按钮就打开了一个jQuery对话框。该对话框作为jQuery小部件实现: (function ($) { $.widget("myApp.myDialog", { _create: fnction() {...} // create a dialog _init: fnction() {...} // open a dialog }) }(jQuery)); (函数($){ $.widget(“myApp.myDi

这是一个很难回答的问题

假设我点击一个按钮就打开了一个
jQuery
对话框。该对话框作为
jQuery
小部件实现:

(function ($) { $.widget("myApp.myDialog", { _create: fnction() {...} // create a dialog _init: fnction() {...} // open a dialog }) }(jQuery)); (函数($){ $.widget(“myApp.myDialog”{ _创建:fnction(){…}//创建一个对话框 _init:fnction(){…}//打开一个对话框 }) }(jQuery)); 我在单击按钮时打开此对话框,如下所示:

$('#myButton').bind('click', function() { $(this).myDialog(); }); $('#myButton').bind('click',function(){$(this.myDialog();}); 到目前为止,一切顺利。我希望这是有道理的


现在我想在对话框打开时禁用该按钮,并在对话框关闭时启用它。如何将按钮传递到对话框小部件

由于您希望创建一个
对话框
,您可能希望将
$.ui.dialog
作为
$.widget
的第二个参数传入,以便继承对话框的功能

创建
myDialog
的实例时,可以启用/禁用该按钮

(function($) {
    $.widget('myApp.myDialog', $.ui.dialog, {
        
    });
    
    $('.dialog').myDialog({
        open: function() {
            $('#myButton').prop('disabled', true);
        },
        close: function() {
            $('#myButton').prop('disabled', false);
        }            
    });
}(jQuery));
示例-