Tag: ruby on rails 3

如何在ajax url中调用控制器动作

我想调用ajax url中的控制器方法,根据另一个下拉列表中的值动态填充下拉列表。 我得到的值是字符串,当我使用ajax url调用此方法时,它总是引用’show’方法。 我的ajax电话 $(‘#users’).change(function() { url: ‘/users/update_groups’, data: {name: $(this).val()}, success: function (data) { alert(data); } }); 在我的users_controller.rb中 def update_groups user_name # returns list of groups end 如何使用ajax url调用此方法?

Rails 3 Ajax表单不发送参数

我在我的索引页面上有一个用于对记录进行排序的表单,我想为它添加一些Ajaxfunction,但由于某种原因,只要我将Ajax添加到混合中,它就不会发送我的表单参数。 这是我的表格: “get”, :remote => true do %> 和我的Ajax javascript: jQuery(document).ready(function($) { $(function () { $(‘#sort-options input, .pagination a’).live(“click”, function () { $.get(this.href, null, null, ‘script’); return false; }); }); }); 当我单击提交按钮并查看我的Firebug控制台以查看发生了什么时,很明显它已成功调用Ajax并且它为页面提供服务没有问题。 但是它完全忽略了我发送的params,并且在重新查询数据库时不考虑这一点。 如果我取出’:remote => true’并删除指向Ajax文件的链接,params成功地被发送回索引操作 – 只是没有Ajax 🙁 我应该补充一点,Ajax目前适用于我在同一页面上的分页。

显示Rails的旋转器3 UJS获取Type错误

我的Rails 3应用程序中有三个链接,使用UJS将信息加载到它们下面的容器中。 为了完成体验,我希望在信息加载时显示一些“正在加载…”文本。 所以我使用了Simone Carletti的post中的一些jQuery来尝试完成它。 但是,根据jQuery,单击第一个链接时会发生两种不同的事情。 (在这两种情况下,单击其他两个时都不会发生任何事情。) 鉴于下面的代码,我得到TypeError: ‘undefined’ is not a function (evaluating ‘$(“#tabs-1”).js(data)’) 所以要解决这个问题,我将我的jQuery更改为$(“#tabs-1”).html(data); 。 然后: TypeError消失了 “正在加载……”没有显示 单击我的第一个链接会呈现各种未格式化的无关代码,例如: $(“#tabs-1”)。html(“\ n Text: \ n \ n text。 \ n \ n \ n 生成的HTML: Cred About Credits Loading… # load info here 我的profiles_controller.rb操作加载信息的示例: def profile_about @profile = Profile.find(params[:id]) respond_to do |format| format.js { […]

jquery:安装在Rails中不起作用

我在Rails 3.1 app中安装了gem jquery-rails 。 但是下面的行 rails generate jquery:install –ui 得到错误: Could not find generator jquery:install.

完整日历不显示来自JSON源的事件

我已阅读完整日历上的整个文档,但仍然无法从JSON源渲染任何内容。 我正在运行Rails 3.2,当我使用Google的开发者工具预览我的JSON源代码时,我看到格式正确的JSON对象和状态代码为200的Header以及Accept:application / json。 我这样称为完整日历: $(‘#calendar’).fullCalendar({events: ‘/events’}); 如果我声明一个JSON对象,然后自己渲染它,那么渲染就好了: var event = { “title”: “Event 1”, “start”: “1363794900”, “end”: “1363794900”, “url”: “/events/4” } $(‘#calendar’).fullCalendar( ‘renderEvent’, event); 编辑1在事件控制器中,index.json.erb如下所示: { “title”: “”, “start”: “”, “end”: “”, “url”: “” } 它返回以下内容: { “title”: “Matts Party”, “start”: “1363794900”, “end”: “1363794900”, “url”: “/events/4” } { “title”: “Mateuszs Party”, “start”: “1363795440”, […]

如何在jQuery AJAX应用程序中学习启用后退按钮?

我已经查看了所有最流行的问题,包括那些引用最受欢迎的插件,如BBQ和jQuery Address。 但是,我缺少一些东西。 我需要从我在这些项目中看到的任何东西退后一步。 他们假设我显然没有一些基本知识,而且我无法推断出示例中的每行代码实际上在做什么。 我想做四件事: 1)使前进按钮像在非AJAX应用程序中一样工作。 2)使后退按钮像在非AJAX应用程序中一样工作。 3)反映地址栏中的URL,以便为其添加书签。 4)生成深层链接,以便可以抓取AJAX内容。 这就是全部。 其他任何东西都是矫枉过正的。 这是一个Rails 3.0.4应用程序,我的链接都有一个href为“#”。 单击其中一个链接可激活application.js中的一个函数,该函数替换当前页面上div中的html,其中包含从.js.erb文件呈现的部分创建的更多链接。 我有一个工作正常的痕迹路径,但使用后退按钮会在您查看应用程序之前将您带到您正在查看的任何网站。 所以我的一些问题是: 1)我的每个链接都需要一个唯一的href值而不是简单的“#”吗? 2)我应该每次都替换那个div,或者只是隐藏它并创建一个新的div。 如果是这样,每个新div应该有一个新的id吗? 3)由于当前地址栏中的url没有改变,并且这些AJAX请求都是POSTS,我是否必须在Rails中做任何事情以使其响应这些新URL之一,这些URL在访问时总会触发GET请求通过浏览器历史或后退按钮? 这些障碍阻碍了我解决现有问题。 非常感谢您提供的任何帮助! 编辑: 我的应用程序不是基于标签的。 页面加载时并非所有锚点都可用。 以下是用户点击链接时发生的情况: 1)隐藏表单中的字段用所单击的链接的文本值填充。 2)隐藏的表单被序列化并通过POST传递给控制器​​动作。 3)控制器动作确定谁发出请求,确定他们有权访问哪些数据,并使用表单值(现在为params)来检索对象列表。 4)将这些对象传递给.js.erb视图模板,该视图模板又使用传递的值呈现部分。 5)新的链接通过.js.erb模板中的js反弹。 基本上,由于我的数据不是静态的,我需要弄清楚如何使用表单状态AS IT WAS重新生成POST请求,以便真正“返回”。 或者表单状态是否可以以某种方式缓存屏幕?

在wicked_pdf中渲染jQuery

我在我的应用程序中使用Highcharts来渲染图表。 一切正常,除非我想将包含图表的页面转换为PDF。 我正在使用wicked_pdf 。 这是我的控制器的show方法: format.pdf do render :pdf => “report”, :template => “/quarters/report.pdf.erb”, end 我的/quarters/report.pdf.erb文件看起来像我的show.html.erb中的highcharts: $(function () { new Highcharts.Chart({ chart: { renderTo: ‘testcollections’ }, title: { text: ‘Test Collections’ }, plotOptions: { series: { dataLabels: { enabled: true, formatter: function() { return this.y; } } } }, series: [{ name: ‘Collections’, type: ‘area’, […]

Rails 3 – 包括View上的JavaScript?

这就是我正在尝试做的事情….当用户登录并重定向到登录页面时,我想运行一些jquery ajax来抓取并注入一些内容。 我最初在我的application.js文件中有它,但问题是代码存在于没有登录的用户,这意味着我必须添加逻辑来解决看起来不干净的问题。 我想要的是调用视图以便能够包含JavaScript ….我尝试在视图文件中粘贴它但是失败了,因为它是在页面底部的JQUERY之前加载的。 。 Rails 3大师如何处理这个问题? 谢谢!

将fancybox附加到fancybox内的链接

我想知道一种方法来加载我的fancybox并将一个fancybox附加到这个fancybox中的一个链接。 我从今天开始使用fancybox的最后一个版本(2.0.1)。 这是我尝试的没有成功: $(‘a.new_category_link’).fancybox({ closeClick: false, afterShow: function() { $(‘a.edit_category_link’).fancybox({ closeClick: false }); } }); 根据版本2.0.1的要求,我与类“edit_category_link”的链接也有类“fancybox.ajax”。 对于过去使用最旧版本的人来说, hideOnContentClick被closeClick和onComplete afterShow 。 现在,当我点击我的fancybox中加载的a.edit_category_link时,它会在父页面的html中呈现页面,而不是fancybox。 如果您有任何想法,请不要犹豫,分享!

在rails中执行AJAX Post而不传入authenticity_token

所以我记得有一次,当我试图做一个AJAXpost时,我不得不将form_authenticity_token作为其中一个数据传递给rails。 出于某种原因,不这样做会产生某种错误,我会立即退出。 有没有办法仍然有这个forms提交的真实性令牌,但不是ajaxpost? 换句话说,我不想在我的post数据中传递autheniticy令牌。