Tag: jquery

Rails 3.1 vs 3.0 AJAX语法的区别。 jQuery中的等价语句?

通过“使用Rails进行Agile Web开发”第4版进行操作并点击开始使用AJAX的部分。 (第11章迭代F2)。 在示例代码中,使用Rails 3.0的书建议创建: app / views / line_items / create.js.rjs,文件只包含: page.replace_html(‘cart’, render(@cart)) 使用jQuery的rails 3.1的等效实现是什么? 应用程序/视图/ line_items / create.js.erb? $(‘#cart’).html(?something magical here?)

Rails – 从控制器触发javascript事件

我正在考虑实施类似下面的内容,并且想知道a)如果由于某种原因我可能是一个非常糟糕的想法,我没有想到,并且b)如果没有 – 是否有现成的gem可以做到这一点。 基本上,我希望能够从我的rails控制器排队javascript事件,以便在下一次渲染时,所有排队的事件都将被触发并从队列中删除。 有点像闪存机制,但对于事件而言。 例如: 在我的控制器中: def create if resource.create add_event(‘resourceCreated’, :id => resource.id) end end 在我的应用程序布局中,例如: %javascript – @events.each do |e| $(document).trigger(#{e.event_name}, #{e.event_data}) 有什么想法吗? 编辑:这将是有用的,例如,当创建项目时,服务器可以重定向到所述项目的编辑表单,或者可以重定向到相关控制器的索引操作。 这些页面不知道刚刚创建了一个项目。 但是,如果项目是成功创建的话,我想做一些像关闭对话框窗口的事情,但如果不是,则将其保持打开状态,或者我可能需要知道任何其他可能的原因。 显然不仅仅与创造有关,这只是我用来说明问题的例子 编辑:赏金去任何以令人信服的方式说服我这是一个好/坏的想法或提供更好的选择

Rails中后台进程的进度条

我的Rails应用程序中有几个进程调用外部Web API – 需要很长时间才能完成。 我考虑过将它们移到后台进行处理。 我希望能够向用户显示后台进程的进度(即进度条)。 首先,有没有关于在Rails中使用jQuery实现进度条的任何好的教程/学习资源(与文件上载过程无关)? 我已经看到了很多关于显示图形的资源 – 但是没有很多关于如何将图形更新挂钩到实际后台进程的信息。 其次,当我考虑用于后台处理的各种gem时,是否有一个可以更好地使用进度条(即延迟作业,Resque,Sidekiq)? 谢谢

TypeError:$(…)。selectize不是函数

我在我的rails应用程序中安装了“selectize-rails”gem,我正试图让它工作。 我一直在我的网络控制台中收到此错误: TypeError: $(…).selectize is not a function 并且浏览器中没有任何反应。 这是我到目前为止的代码,遵循此页面中的“电子邮件联系人”示例: http : //brianreavis.github.io/selectize.js/ 意见/电子邮件/ new.html.erb $(document).ready(function() { console.log( typeof $.fn.selectize === ‘function’); // true console.log( $(‘#select-to’).length === 1 ); // true var REGEX_EMAIL = ‘([a-z0-9!#$%&\’*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&\’*+/=?^_`{|}~-]+)*@’ + ‘(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)’; $(‘#select-to’).selectize({ persist: false, maxItems: null, valueField: ’email’, labelField: ‘name’, searchField: [‘name’, ’email’], options: [ {email: ‘brian@thirdroute.com’, name: ‘Brian […]

Rails:无法提交通过Ajax加载的远程表单

目标 我有一个包含Rails后端的项目列表的页面。 我希望能够通过Rails UJS使用Ajax调用来编辑该列表中的行。 途径 我在每行的末尾添加了一个编辑按钮。 编辑按钮是link_to … :remote => true 。 单击它会再次加载列表,但所选行将处于编辑模式。 可编辑行嵌入在form … :remote => true 。 该行中的保存按钮是一个submit按钮。 index.html.haml #editor %table – @items.each do |item| %tr = render :partial => ‘row’, :locals => { :item => item } _row.html.haml … %td // a number of columns with attributes … %td = link_to t(“actions.edit”), […]

jquery不在rails中工作

我已经阅读了很多关于在rails中使用jquery的页面,但似乎无法让它工作。 我有’jquery-rails’gem,我安装了。 我在application.js文件中有require语句。 这是我一直在运行的测试页面: true %> true %> $(document).ready(function(){ $(“.bg-info”).click(function(){ $(this).hide(); }); }); 但是,当我点击浏览器中的“bg-info”文本时,我得不到任何回复。

Rails 3.1 Ajax问题

我有一个名为post的脚手架,它有标题和描述。 在我的布局上,我有一个链接来创建一个新post:remote => true。 当我点击远程链接更改div的内容以便我可以创建新post时,我该如何制作?

jquery-rails打破kaminari?

我更新了我的Rails 3.0.7应用程序,使用kaminari 0.12.4(从0.10.4起)用于分页和jquery-rails 1.0.9,它似乎打破了分页。 我已经重新生成了kaminari视图,因为它们不同但是由于某种原因ajax不起作用。 已经包括了。 哪个在浏览器中产生这个: 在我看来,我有: true%> 这会产生以下错误: ActionView :: MissingTemplate(缺少模板用户/显示{:handlers => [:erb,:rjs,:builder,:rhtml,:rxml],:formats => [:js,“application / ecmascript”,“application / x-ecmascript“,” / “],:locale => [:en,:en]}在视图路径”/ home / epipheus / CodeWarehouse / praypeer / app / views“,”/ home / epipheus / .rvm / gems /ruby-1.9.2-p0@rails3tutorial/gems/kaminari-0.12.4/app/views“): 以下非ajax版本当然可以正常工作: false %> 所以我觉得jquery ujs有问题吗? 请帮我。

嵌套模型表单 – Railscast#196修订 – 通过jQuery添加字段无法正常工作

我正在遵循Railscast#196修订版 ,一切都基本上没问题,但我无法在嵌套表单中添加新字段。 “删除字段”function运行良好,但点击“link_to_add_fields”后,浏览器会跳转到页面顶部,并且不会显示新字段。 这个轨道广播已经有很多问题了,比如这里或这里 ,我试着阅读所有这些问题,但大多数是指2010年的原始演员。我现在被困了几个小时,我不能弄清楚,我的问题在哪里。 对不起,如果它是一个新手的错误,我对rails很新。 任何帮助将非常感激! 我使用Rails 3.2.13,Ruby 1.9.3来遵循#196修订版 车型/ post.rb class Post :destroy accepts_nested_attributes_for :postfiles, allow_destroy: true end 车型/ postfile.rb class Postfile < ActiveRecord::Base attr_accessible :dropbox, :gdrive, :post_id belongs_to :post end 意见/职位/ _form.html.erb 意见/职位/ _postfile_fields.html.erb postfiles.js.coffee jQuery -> $(‘form’).on ‘click’, ‘.remove_fields’, (event) -> $(this).prev(‘input[type=hidden]’).val(‘1’) $(this).closest(‘fieldset’).hide() event.preventDefault() $(‘form’).on ‘click’, ‘.add_fields’, (event) -> time = […]

Rails 3和jQuery – 如何将Ruby代码添加到元素中

我正在尝试使用jQuery,jQuery表单插件和Ruby on Rails来创建一个AJAX图像上传器。 我已完成所有图像上传和ActiveRecord创建,但AJAX部分本身不起作用 – 它应该导致 重新渲染图片部分的集合。 但是,我试图插入的Ruby代码被渲染为字符串而不是被执行。 application.js中: $(document).ready(function(){ $(“#upload input”).change(function(event){ $(this).parent().ajaxSubmit({ beforeSubmit: function(a,f,o) { o.dataType = ‘json’; }, complete: function(XMLHttpRequest, textStatus) { $(“#img_div”).html(”); }, }); }); }); 更改文件字段时将表单绑定到ajaxSubmit,这很正常。 .html()似乎有问题,因为字符串只是打印在 。 _form.html.erb: 该行在页面刷新时可以正常工作以呈现集合。 我知道Ruby代码没有问题,因为我之前在create.js.erb文件中有这个确切的行。 我会继续使用这种方法,除非我现在使用ajaxSubmit,我无法将创建操作呈现为JS – 它总是呈现为HTML。 所以理论上我可以用两种方法解决问题 – 弄清楚为什么ruby代码在application.js中呈现为字符串,或者将pictures#create #create呈现为JS。 我做错了什么事情没有发生? 编辑: 好的,所以我似乎无法在applications.js中使用Ruby代码或变量,并且尝试将Ruby集合传递给JavaScript不起作用,因为我无法访问我需要重新创建的所有属性正确的HTML。 我需要的是一种确保pictures#create动作被称为JS的方法。 然后我可以使用format.js来确保使用format.js ,我知道我的代码可以工作。 任何建议?