【问题标题】:Saving dialog boxes jquery?保存对话框jquery?
【发布时间】:2014-09-17 13:54:12
【问题描述】:

我正在使用 jQuery ui 对话框实现便笺。因此,单击按钮会打开一个对话框,该对话框覆盖整个窗口大小,并且在该框内是一个添加注释的按钮(这是小尺寸的对话框)。

现在我想保存为每个用户添加的注释。所以我希望当用户再次打开对话框时返回之前的注释(对话框)。

如何做到这一点?

【问题讨论】:

  • 无法使用“仅”jQuery。
  • 我不太确定你在问什么。您是在询问如何创建对话框,或者如何存储信息?如果它在客户端存储一些东西,请查找 cookie 和本地存储。如果是服务器端,则需要在服务器中对其进行编码。
  • @ThinkDifferent:是的,content 的笔记会保存在数据库中,我不清楚在加载保存的内容的情况下如何打开对话框?
  • @bvx89:我在询问有关创建对话框的问题。我将能够从数据库中获取内容
  • 好的,如果你已经保存了它们,然后从数据库加载数据并创建这些对话框,那么你可以将它们称为$('DIALOG_ID').dialog(); 为每个对话框或$('DIALOG_ID1, DIALOG_ID2,...').dialog(); 并将它们包装在$(document).ready{ });

标签: javascript jquery html jquery-plugins jquery-ui-dialog


【解决方案1】:

这不是您问题的直接答案,主要是因为您没有提供任何代码供我们审核,而是您在创建此功能时需要考虑的事项。有多种方法可以解决它,但我不确定哪种方法最适合您的应用程序。

您可以通过将用户注释的内容放在页面上来解决此问题,但在用户打开它之前将其隐藏起来。但是,要保存对话框的状态,您需要在页面本身上执行 POST 或向服务器执行 AJAX 请求以通过 API 存储它。后者是首选方式,因为您不需要刷新整个页面。

假设您确实创建了一个用于 POST 笔记的 API,但是,如果您已经有一个 API 来存储信息,为什么不创建一个 API 来检索信息呢?请注意,此 API 必须在服务器上开发。

现在是安全部分。您的网站需要登录吗?如果是这样,请确保当前用户只被允许 GET/POST 他们写的笔记。如果您的网站没有登录名,最好将其存储在客户端 cookie/localstorage 中而不是数据库中,这样他们就无法操纵其他人的笔记。

在询问这些问题时注意您使用的服务器类型可能也是一个好主意,因为您正在与数据库交谈。


【讨论】:

    【解决方案2】:

    每当用户访问页面时,获取为该用户添加的注释并分配给注释(div)。这应该发生在 document.ready 中。如果有的话,它将为用户显示对话框上的注释。

    【讨论】:

      猜你喜欢
      • 2010-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-02
      • 1970-01-01
      • 2011-08-23
      • 1970-01-01
      相关资源
      最近更新 更多