jQuery open事件的内联函数

时间:2014-12-25 06:03:36

标签: jquery dialog

我有一个cshtml页面,其中我有两个具有不同id的按钮,但具有相同的类。当我点击任一按钮时,将打开相同的对话框,其中包含基于按钮ID的相应信息。

$('.class').click(function(){
    $('divDialog').dialog().('open');  
});

上面的代码用于触发jquery对话框的open事件。并且,jquery对话框的Open事件如下:

open: function(){

}

但是,我需要根据触发事件的按钮区分click事件,以在jquery对话框中显示相应的信息。由于我使用了按钮类,我需要传递控件的id来打开jquery对话框的事件。这可能吗?

否则,是否有任何方法可以为jquery对话框设置内联打开事件,如

$('divDialog').dialog().('open', function(){});

请为此问题提供意见。

由于 Manikandan J

1 个答案:

答案 0 :(得分:0)

您可以创建一个指向当前按钮元素的变量,并在open事件监听器中使用它(假设您之前在某处初始化dialog

var currentButton;

$('divDialog').dialog({    //Here we initialize dialog and immediatelly close it
    open: function() {
        //Here you can use `currentButton` variable
    },
    close: function() {
        currentButton = null;    //Clear `currentButton` when dialog is closed
    }
}).dialog("close");

$('.class').click(function(){
    currentButton = this;

    $('divDialog').dialog('open');  
});

或者您可以在内部点击事件监听器中初始化dialog

$('.class').click(function(){
    var button = this;

    $('divDialog').dialog({
        open: function(){
            //Here you can use `button` variable
        }
    });
});