2011-09-29 36 views
0

我有通过has_many关联附加到我的项目的标准注释控制器。在rails中打开jquery弹出窗体来显示注释并创建注释

我有一组显示最新评论的行。

当用户点击所显示的注释(比如说他们点击标题),然后我想

1),弹出打开显示 一)评论提交表单 B)下方的评论表格,与项目相关的所有评论列表。

我很难让弹出窗口工作,然后用上面的1和2填充弹出窗口。

当我提交兴田形式,我希望它刷新与相同的设置弹出(新评论的形式和低于现有注释列表。

我想我可以用jQuery和轨道,但不知道这样做。怎么我使用jQuery护栏

感谢您的帮助

+0

你提的问题是过于宽泛。你试过什么了?你卡在哪里?你的弹出代码现在是什么样的? – coreyward

回答

0

正如你可能需要在看看JQuery dialog demo开始! - 把一种形式的对话框内,并与阿贾克斯(提交远程=>如果成功的话,关闭对话框Evan的答案会给你一个更漂亮和最终更好的解决方案(许多其他的lightbo x-like gems),但使用jQuery对话框可能是最简单的启动方式

1

这听起来像你要在Rails中使用一点AJAX。 Rails的不引人注意的JavaScript和AJAX功能允许您在不重新加载页面的情况下将远程视图加载到弹出窗口中,我认为您可能想要在此处执行的操作是将包含注释编辑/显示组合布局的远程视图加载到弹出窗口中。然后让AJAX在关闭对话框后更新主页面。

我会从using unobtrusive JavaScript with AJAX with Rails 3这个简短的教程开始,然后检查出Facebox,我从this post that asks a question related to yours了解到。

祝你好运!

0

我用Facebox去了,两个答案都很好,所以谢谢。 但是,我有以下问题:任何想法?

与Facebox,我收到原始文本时,我用它('#facebox .content')选择器。它适用于('#facebox')('#facebox .popup')。你们遇到过这个吗?通过原始输出,我的意思是:

$('#facebox .content').html(" 
\n Hello from box div\n<\/div> "); 

这就是盒子里显示的内容。并仅限于.content选择器!

在application.js中我有:

$('a[rel*=facebox]').facebox(function($) { 
    $.getScript(this.href); 
}); 
在我的控制器

respond_to do |format| 
    format.html # show.html.erb 
    format.xml { render :xml => @project } 
    format.js {render :layout => false} 
    end   

在我show.js.erb:

$('#facebox .content').html("<%= escape_javascript(render("spaces"))%>"); 
+0

只是重新审视这个问题。我最近在最近的一个项目中使用了colorbox,我对它很满意。实际上,比面部盒更容易使用。所以这可能是有人希望整合这一点的另一种选择。 – jignesh