我正在尝试将事件绑定到使用JQuery UI Dialog函数在页面上创建的所有对话框(无论它们是否已显示)。我似乎无法找出能让我在那里的选择器。我已经尝试了.ui-dialog
和.ui-dialog-content
但没有成功。
由于我正在尝试制作通用方法,因此我不知道可能已创建的对话框的ID。
我正在使用以下代码进行测试。如果我指定对话框的id(#mydialog
),它会起作用,但在生产中,我不会知道这些。
$("div.ui-dialog").bind("dialogclose", function(event, ui) {
window.alert("close fired");
}
答案 0 :(得分:7)
您的对话框是否有一个可以选择它们的公共类?如果他们都有“ui-dialog”类,那么这将有效:
$(".ui-dialog")
的例子
$("div.ui-dialog")
要求用一个ui对话框选择所有div,只要该类被赋予div元素,它应该也可以工作。
您的问题可能是在对话框元素存在之前绑定它们?您可能需要.live()函数,以便它绑定到在任何点创建的任何对话框,而不仅仅是调用函数时存在的对话框。
发布HTML代码段会有所帮助。
答案 1 :(得分:2)
您可以使用:
$(":ui-dialog").each(function(){
"enter your code here"
})