这是一个非常简单的问题,但我找不到答案。 我有一个对话框,在其中一些事件发生时,我想点击对话框中的按钮。 定义对话框的代码如下:
var dialog = $('<div>').dialog({
autoOpen: false,
title : title,
resizable : false,
buttons : {
'CANCEL' : {
text : messages.Cancel,
click : function(){$(this).dialog('close')}
},
'OK' : {
text : messages.Ok,
click : okButtonCallback
}
}
});
在我的事件中,我能够获取对话框,找到按钮,但是我无法通过正确的引用传递作为this来触发点击事件。我这样做:
buttons = dialog.dialog('option', 'buttons');
我有几个按钮,每个都有点击功能。如果直接调用或通过trigger('click')调用它们,它们将调用按钮的点击事件,但this指向按钮本身而不是对话框对象。 我在某处看到可以这样调用:
buttons['OK'].apply(dialog);
但是我的按钮完全没有应用功能!
我不确定我能做什么!