繁体   English   中英

如何使用 jquery 检测对话框是否已打开?

[英]How can I use jquery to detect whether a dialog has been opened?

在我的代码中,有几个 HTML 框,每个框打开不同的对话框。 这是我打开对话框的方法:

function popup(category) {
  $(category).dialog();
};

这些框有一个点击: popup('#categoryName') 我想确保一旦打开了特定对话框,就无法重新打开它。 如何使用 JQuery 检测该对话框是否已打开防止再次打开该对话框?

在此先感谢您的建议!!!

您可以向您的框添加一个属性以检查其各自的对话框之前是否已打开,并使用 attr 函数获取该值并在打开对话框后更改它。

<div id="category-1-box" onclick="popup(this, '#category-1')" has-been-opened="no">Category 1</div>
<div id="category-2-box" onclick="popup(this, '#category-2')" has-been-opened="no">Category 2</div>
function popup(box, category) {
    if($(box).attr("has-been-opened") === "no"){
        $(category).dialog();
        $(box).attr("has-been-opened", "yes");
    }  
}

请注意,当您从 onclick 事件调用该函数时,您必须向弹出函数添加一个新参数并传递this关键字。 通过这种方式,您可以操作该特定元素以使用 JQuery 检查和更改值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM