javascript - 如何在关闭对话框后禁用它?

标签 javascript jquery

这是用例:

如果用户响应该对话框,则会向用户提示一个对话框,则该对话框不应再次向用户显示。 这可以通过删除对话框来完成,例如 $("#dialog-box").remove() 但问题是刷新时会再次出现该对话框。

我对解决方案的猜测(不确定这是否可能):

当用户响应对话框时,创建某种全局变量,例如SHOW='true',刷新页面时查看SHOW是否为true 然后从 DOM 中删除对话框。

欢迎对此有任何想法。

解决方案

使用 cookie 方法,例如:

当名为“dialogbox”的cookie值不存在时,则创建值为“foo”的cookie。 如果 cookie 的值为 "foo",则仅显示对话框。 当用户响应对话框时,将该 cookie 的值更改为“bar”。 由于 cookie 值不是 "foo",因此不会出现对话框。

找到this有用。

感谢您的回答和评论。

最佳答案

对此有多种解决方案,第一个是使用服务器端验证。正如您所说,要创建一个变量,如果 HTML 必须显示对话框,那么它必须显示,否则 HTML 甚至不会将对话框传递给用户。

否则,将其作为缓存对象保存到用户的浏览器中。这样 jQuery 或 JavaScript 就会处理它并向用户显示/不显示对话框。

关于javascript - 如何在关闭对话框后禁用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25644200/

相关文章:

php - Wordpress - 如何通过 AJAX 获取更多帖子?

javascript - 将变量列表动态包含到 Jquery 函数中作为参数

javascript - 在 JavaScript 中用同一帧中的另一个对象替换一个对象?

javascript - new Array(_).fill(object) 不会创建对象的新实例

javascript - 当滚动到另一个 div 时,将 NavBar 放在顶部(即顶部 :100vh)

影响 CSS 规则的 JavaScript/jQuery 函数

javascript - 下面的代码有什么问题?

Javascript 遍历派生数组

javascript - 将自定义参数添加到完整日历请求

javascript - 当用户单击任何列表元素时运行函数