这是一个非常基本的问题,但我找不到一个好的答案。我的Rails应用程序中有一个页面,其中有许多对象可以被“标记”。单击标志按钮应显示一个带有确认,小窗体等的小盒子。问题是我无法弄清楚如何使用RJS模板执行此操作。
我一直在使用page.insert_html,但这需要一个ID。为了完成这项工作,我必须分配每个可以标记为唯一ID的东西。这似乎不是很干净,仍然让我想知道确保只能显示一个表单,并且提交时框会消失。这个问题有更简单的解决方案吗?我本质上想要创建类似于SO上出现的标志框的标志。对不起,我对RJS模板比较陌生。感谢。
答案 0 :(得分:4)
您可以使用jquery facebox执行此操作。这种事情最好不要在rjs中完成,但在不引人注目的javascript中,这就是现在每个人都在前进的地方,它更清洁。您可以将facebox rel附加到链接,然后单击它可以在弹出窗口中打开表单。
然后在弹出窗口中,您可以执行表单和重定向或其他任何操作。用户将只能点击一个,因为当弹出窗口打开时,覆盖页面被放在页面上,因此在外面点击要么没有效果要么关闭表单(我想你在配置中选择)。
听起来像是要走的路。
答案 1 :(得分:2)
jQuery UI还有一个Dialog小部件,可以很好地处理这类事情。这是一个很好的小部件,您可以自定义您的jQuery UI库以包含(或排除,如果您想要更轻薄的javascript传递到浏览器)其他方便的小部件(手风琴,进度条等)
上的对话框示例