gpt4 book ai didi

javascript - jquery如何获取打开对话框的按钮

转载 作者:搜寻专家 更新时间:2023-11-01 04:46:54 24 4
gpt4 key购买 nike

我有一个由许多按钮打开的对话框。我怎么知道是哪个按钮打开了那个对话框?

$('#dialog').dialog({
autoOpen: false,
buttons: {
"Ok": function() {
$(this).dialog("close");
},
"Cancel": function() {
$(this).dialog("close");
}
},
open: function(event, ui) {
//HERE ::: how to get an HTML OBJECT TO THE ELEMENT THAT OPENED THE DIALOG
}
});

调用者:

$('a').live('click',function(){
$('#dialog').dialog('open');
});

我想知道哪个<a>标记调用了该对话框。这可能吗?

谢谢!

最佳答案

在你的 .live() 处理程序,您可以存储对使用 .data() 单击的元素的引用,像这样:

$('a').live('click',function(){
$('#dialog').data('opener', this).dialog('open');
});

然后要稍后获取它,您可以从 $('#dialog').data('opener') 中获取它, 或 $.data(this, 'opener') open 的情况下回调(因为 this 指的是对话框元素)。例如你的 open函数可能如下所示:

open: function(event, ui) {
$(this).html("Hi, I was opened by: " + $.data(this, 'opener').id);
}

这将显示 id您单击以打开对话框的 anchor 的属性...您真的可以做任何您想做的事, $.data(this, 'opener') 指的是<a /> DOM 元素。

You can give try a demo of this here

关于javascript - jquery如何获取打开对话框的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3292498/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com