4

这是一个非常基本的问题,但我找不到一个好的答案。我的 Rails 应用程序中有一个页面,其中有许多可以“标记”的对象。单击标志按钮应该会显示一个带有确认、小表单等的小框。问题是我不知道如何使用 RJS 模板来执行此操作。

我一直在使用 page.insert_html 但这需要一个 ID。为了完成这项工作,我必须为每个可以标记的事物分配一个唯一 ID。这看起来不是很干净,仍然让我想知道确保只能显示一个表单并且该框在提交时消失。这个问题有更简单的解决方案吗?我本质上想创建类似于 SO 上出现的标志框的东西。抱歉,我对 RJS 模板比较陌生。谢谢。

4

2 回答 2

4

你可以用jquery facebox做到这一点。这种事情最好不要在 rjs 中完成,但在不显眼的 javascript 中,这就是现在每个人都在前进的地方,它更干净。您可以将 facebox rel 附加到您的链接,然后单击它可以在弹出窗口中打开表单。

然后在您的弹出窗口中,您可以执行表单和重定向或其他任何操作。用户将只能单击一个,因为当弹出窗口打开时,覆盖层被放置在页面上,因此在其外部单击无效或关闭表单(我认为您在配置中选择)。

听起来像是要走的路。

于 2009-08-21T01:16:12.310 回答
2

jQuery UI 也有一个 Dialog 小部件,它非常适合这种事情。这是一个不错的小部件,您可以自定义您的 jQuery UI 库以包含(或者如果您希望将更精简的 javascript 传递给浏览器,则排除)其他方便的小部件(手风琴、进度条等)

查看jQuery Dialog中的 Dialog 示例

于 2009-08-21T17:33:21.763 回答