我正在向jQuery UI对话框中添加一些实用程序函数,我需要一种方法来在将功能附加到每个打开的对话框时获取选择器:
$(document).on("dialogopen", ".ui-dialog", function (event, ui) {
我发现在对象中,选择器是空的:
selector: "",
我不相信每个对话框都会被id打开,那么如何在dialogopen上找到选择器呢?
答案 0 :(得分:0)
在你的开放回调中,event.currentTarget是对话框的引用。
因此,以下内容将为您提供正在拨打的div。
$(function () {
$(document).on("dialogopen", ".ui-dialog", function (event, ui) {
var $div = $(event.currentTarget).find('.ui-dialog-content');
// Do something with the div
});
$('#mydialog').dialog();
});
然后,您可以获取id属性或使用$ div.hasClass来确定它是哪个div。
或者您可以在对话之前将选择器作为数据属性添加到div。看看这个jsFiddle。