Tôi đang cố gắng ràng buộc một sự kiện cho tất cả các hộp thoại đã được tạo trên một trang bằng cách sử dụng chức năng Hộp thoại Giao diện người dùng JQuery (cho dù chúng đã được hiển thị hay chưa). Tôi không thể hình dung ra một công cụ chọn sẽ đưa tôi đến đó. Tôi đã thử cả hai .ui-dialog
và .ui-dialog-content
mà không thành công.Cách tìm tất cả các hộp thoại trong JQuery
Vì tôi đang cố gắng tạo một phương pháp chung, tôi sẽ không biết ID của các hộp thoại có thể đã được tạo.
Tôi đang sử dụng mã sau để kiểm tra. Nó hoạt động nếu tôi chỉ định id của một hộp thoại (#mydialog
), nhưng trong sản xuất, tôi sẽ không biết điều này.
$("div.ui-dialog").bind("dialogclose", function(event, ui) {
window.alert("close fired");
}
thay đổi cuộc gọi đến .live() giải quyết vấn đề Để tham khảo trong tương lai, lớp ui-thoại được thêm vào (và một vài người khác trong ứng dụng của tôi!) bởi giao diện người dùng JQuery, do đó, mã ở trên, với thay đổi thành live() thay vì bind() là chung và sẽ hoạt động ở bất kỳ đâu. –