Tag: ruby on rails

Rails – AJAXmodal dialog?

我有兴趣学习如何使用AJAX模式对话框。 通常,如果我想在我的网站上添加modal dialog,我在主JS文件中添加了jquery UI对话框代码,并将其绑定到ID。 我相信使用Rails我可以创建一个Link,它从服务器获取所有对话框代码,然后打开对话框。 这是真的? 如果是这样,你可以通过提供一个简单的例子来帮助我理解轨道MVC世界中的所有东西吗? 谢谢

rails AJAX js.erb相同路由更多动作

我有带有引导选项卡的rails4应用程序。 我有所有选项卡的root /common_medias ,并在用户单击给定选项卡时为每个选项format.js载带有AJAX + format.js + js.erb的数据。 我的问题是我还想在will_pagination gem的帮助下进行无限滚动,但是js.erb文件已经用于加载初始数据。 目前bootstarp tab js action和will_pagination js action都指向同一个url,所以两者都尝试使用相同的js.erb,这会导致一些问题。 什么是好的解决方法? 创建一个新的控制器动作,这样就会有分开的js.erb文件(由于分页和原始数据将被分开,这个文件似乎很奇怪)。 或者我应该在单个js.erb文件中使用条件来检查触发操作是什么(在选项卡单击/滚动上加载数据)。 我不知道如何实现其中的任何一个,所以请提供一些基于我的优选方式的代码。 common_medias.html.erb <a href="#filestab" aria-controls="filestab" role="tab" data-toggle="tab" data-link = "” data-activetab=”file”>Files <a href="#linkstab" aria-controls="linkstab" role="tab" data-toggle="tab" data-link = "” data-activetab=”link”>Links <a href="#calendarstab" aria-controls="calendarstab" role="tab" data-toggle="tab" data-link = "” data-activetab=”calendar”>Calendar #LOADED BY JS ON TABCLICK … common_medias控制器 […]

在点击时渲染部分

我想对某些标准操作进行部分调用。 我正在使用此方法来调用partial: %li= link_to ‘Delete Event’, ‘javascript:void(0);’, :class => ‘alert tiny button’, :data => {‘reveal-id’ => :RevealDelete} = render ‘layouts/reveal_delete’, :item => event_display(@event.event), :resource => @event 然后在我的部分, #RevealDelete.reveal-modal %a.close-reveal-modal × %h3= “Delete #{item}” %p Are you sure you want to delete this? =link_to “Delete #{item}”, resource, :method => :delete, :remote => :true, :confirm => resource, […]

rails ajax fav按钮用于用户post

我查询了用户post(显然是嵌套资源),并且有很多来自不同用户的post。 我希望用户能够点击每个post旁边的一个小星星,通过ajaxcollections该特定post。 有关如何实现这一目标的任何建议? 我遇到的麻烦是一个页面上有多个喜欢的按钮,喜欢多个post。 这有点像Gmail在收件箱中collections了最喜欢的电子邮件。 实际上,它就是这样的。

Bootstrap 3下拉列表不适用于Rails 4和Turbolinks

我最近将我的站点升级到Bootstrap 3,并且正在浏览所有布局以更新类名和各种function以使其正常工作。 我最近的问题是下降似乎没有起作用。 起初我以为我没有正确地为我的导航栏实现代码,但在感到沮丧之后,我实际上试图摆脱我的导航栏并使用BS 3文档中的一个直接。 即使该代码也不起作用。 我已经研究了这个,我很确定我已经加载了所有正确的.js库。 这是我的application.js: //= require jquery //= require bootstrap-sprockets //= require jquery.ui.datepicker //= require jquery.timepicker.js //= require jquery_ujs //= require turbolinks //= require bootstrap //= require jquery.remotipart //= require chosen-jquery //= require_tree . 这是我的出现的内容: 我在同一页面上有弹出窗口和其他可折叠项目,并且一切正常,所以我相当确定所有的.js都很机智。 我在其他地方读过,turbolinks可能会为Bootstrap 3造成问题,甚至尝试(然后放弃并恢复)jquery.turbolinks gem也无济于事。 不用说,我不知道如何在jsfiddle上重现这个(对不起)。 最后,我已经validation每次单击下拉列表时都会调用以下四个js函数,大概按以下顺序: 的jquery.js:4306 eventHandle = elemData.handle = function( e ) { // […]

成功的Ajax请求成功后,如何在我的视图中增加upvote total

我有一个Thing模型,通过UpVote模型有许多upvotes。 我希望能够通过things/show Ajax创建一个新的UpVote对象,并在不刷新页面的情况下增加upvote总数。 通过Ajax创建一个新的UpVote记录是有效的,但是我不能在视图中增加upvote计数。 如何在成功创建upvote时增加upvote总数? 这是我到目前为止所尝试的: 意见/事/ show.html.erb true, :id => “new_upvote_link”, method: :post, :class => “btn btn-small” %> 意见/事/ create.js.erb $(‘#new_up_vote’).remove(); $(‘#new_up_vote_link’).show(); $(‘#up_votes’).append(‘ @up_vote)%>’); 意见/事/ upvote.js.erb alert(“here”); $(‘#up_votes’).html(”); 控制器/ things_controller.rb class ThingsController < ApplicationController def show @thing = Thing.find(params[:id]) @thing.up_votes.build @up_vote = UpVote.new end def upvote @thing = Thing.find(params[:id]) UpVote.create!(ip: request.remote_ip, voteable_id: params[:id], voteable_type: […]

如何在特定页面上显示Ajax微调器?

我有问题显示我的ajax微调器。 现在我在我的localhost:3000/test使用以下代码localhost:3000/test : 我点击一个链接来显示加载程序(Ruby on Rails代码): true %> 我有div加载器应该出现在里面: 然后我的function使它出现: jQuery( function($) { $(‘#generate-add-form’).ajaxStart( function() { $(this).children(‘.ajax-loader’).show(); }); $(‘#generate-add-form’).ajaxStop( function() { $(this).children(‘.ajax-loader’).hide(); }); }); 最后是我的CSS(一些东西注释掉,看它是否需要): .ajax-loader { display: none; /*position: fixed;*/ z-index: 1000; /*top: -13em; left: 6em;*/ background:url(‘ajax-loader.gif’) 50% 50% no-repeat; } body.loading { overflow: hidden; } body.loading .ajax-loader { display: block; } 为什么我点击它没有显示的链接? 编辑: […]

Rails使用aws-sdk gem和heroku上的jQuery-File-Upload直接进入S3上传

我正在尝试使用jQuery-File-Upload和aws-sdk gem直接在Rails中实现Amazon S3上传,并遵循heroku直接到S3上传说明。 这是在html中生成的上传表单: 这是相应的jQuery: $(function() { $(‘.directUpload’).find(“input:file”).each(function(i, elem) { var fileInput = $(elem); var form = $(fileInput.parents(‘form:first’)); var submitButton = form.find(‘input[type=”submit”]’); var progressBar = $(“”); var barContainer = $(“”).append(progressBar); fileInput.after(barContainer); fileInput.fileupload({ fileInput: fileInput, url: form.data(‘url’), type: ‘POST’, autoUpload: true, formData: form.data(‘form-data’), paramName: ‘file’, // S3 does not like nested name fields ie name=”user[avatar_url]” dataType: […]

Twitter Bootstrap Rails按钮下拉列表没有响应AJAX

我有一个使用Bootstrap的Rails 4应用程序。 我正在创建一个仪表板页面,显示颜色编码的按钮,以表示它所代表的工具的状态。 页面中的HTML如下所示: 706-Hydraulic Ram 98061841 In Service Out of Service view Details 链接的两个方法看起来像这样: def in_service @tool.update(:in_service => true) respond_to do |format| format.html { redirect_to(root_path) } format.js end end def out_service @tool.update(:in_service => false) respond_to do |format| format.html { redirect_to(root_path) } format.js end end 由于“format.js”之后没有任何内容,Rails应该自动执行一个与.js.erb后面的方法同名的文件。 所以我有一个in_service.js.erb和一个out_service.js.erb文件。 它们看起来像这样: $(‘.in_service’).bind(‘ajax:success’, function() { $(this).closest(‘.btn’).addClass(‘.btn-success’).removeClass(‘.btn-warning’); }); $(‘.out_service’).bind(‘ajax:success’, function() […]

带有Rails的jQuery Datepicker 4

我正在使用jQuery Datepicker gem,当我正在编辑一个有日期的记录时,它会出现意外行为。 当我创建新记录时,以mm / dd / yy格式输入日期。 当我去编辑记录时,日期字段正在yyyy-dd-mm格式的日期字段中填充,我不明白为什么。 也许这与Rails本身有关? 表中的Date列设置为Date,我认为这很好。 在控制器中显示日期或某些内容时,我的视图中是否需要执行某些操作? 这是我的application.js文件中的内容: $(document).on(‘page:change’, function () { $(‘#cust_dob’).datepicker({ changeMonth: true, changeYear: true, dateFormat: “mm/dd/yy”, yearRange: “1900:+0” }); }); 任何帮助将非常感激。