Tag: javascript

Rails – 从JavaScript调用CoffeeScript

我正在使用带有CoffeeScript的Rails 3.1并遇到了麻烦。 如何从位于.js.coffee文件中的.js.erb文件中调用函数? 假设.js.coffee中的函数如下: myName = -> “Bob” 我想我可以像任何常规的js函数一样调用它,例如: var theName = myName(); 但这似乎不起作用。 有任何想法吗? 或者是否可以在我的.js.erb文件中使用coffeescript来使一切都一样?

将canvas转换为图像并使用ruby on rails和javascript在新窗口中打开

我非常坚持这个问题,希望你们能帮助我。 我想要实现的是点击链接,按钮或图像,这似乎更简单,我使用toDataURL将canvas转换为图像。 之后,将打开包含此图像的新窗口。 如何使用ruby on rails将从toDataURL生成的数据url传递到新窗口? 提前致谢。

在Rails中使用自定义集成进行条带检出

我正在尝试使用rails应用程序中的自定义集成实现Stripe Checkout – 我的结帐表单显示绿色复选标记,表示已提交,但付款未处理。 简单的集成效果很好,我网站其他部分的订阅付款也是如此。 就像简单的集成一样,我试图将自定义集成脚本放在form_tag中 – 我遵循Rails Checkout指南 ,遗憾的是,它只是为简单的集成而编写的。 像指南一样,我有一个收费控制器,新的和创建动作来显示表格并创建收费。 收费控制器: class ChargesController params[:stripeEmail], :card => params[:stripeToken] ) charge = Stripe::Charge.create( :customer => customer.id, :amount => @amount, :description => ‘Rails Stripe customer’, :currency => ‘usd’ ) rescue Stripe::CardError => e flash[:error] = e.message redirect_to charges_path end end 在我的新视图中,表单设置如下: Buy Now var handler = StripeCheckout.configure({ […]

Rails:从另一个控制器渲染一个.js.erb?

如何从不属于将要呈现的视图的控制器渲染.js.erb ? 例如:如何在post_controller在我的页面视图中渲染create.js.erb ? post_controller.rb def create @post = Post.new(post_params) respond_to do |format| if @post.save format.html { redirect_to @post, notice: ‘Post was successfully created.’ } format.json { render action: ‘show’, status: :created, location: @post } format.js #{I think I need something in here?} else format.html { render action: ‘new’ } format.json { render json: @post.errors, […]

will_paginate与无尽的滚动| Rails4

这是解决方案 所以我正在使用will_paginate / Bootstrap Will Paginate with Endless Scrolling。 为了让分页工作: 1.)在我的控制器中,我更新了我的索引操作 @clips = Clip.order(“created_at desc”).page(params[:page]).per_page(20) 2.)编辑我的索引视图: DONE 分页工作得很好。 To Add Endless scrolling我执行了与之前的Rails 3应用程序相同的步骤。 1.)编辑我的clips.js.coffee jQuery -> $(‘#clips-masonry’).imagesLoaded -> $(‘#clips-masonry’).masonry itemSelector: “.clips-masonry” # Thats my Masonry if $(‘.pagination’).length # Thats for the Endless Scrolling $(window).scroll -> url = $(‘.pagination .next_page a’).attr(‘href’) if url && $(window).scrollTop() > […]

不允许获取补丁请求

我有两个应用程序,一个是反应前端,第二个是rails-api应用程序。 我一直很高兴使用isomorphic-fetch,直到我需要将PATCH方法发送到服务器。 我正进入(状态: Fetch API cannot load http://localhost:3000/api/v1/tasks. Method patch is not allowed by Access-Control-Allow-Methods in preflight response. 但来自服务器的OPTIONS响应包括Access-Control-Allow-Methods列表中的PATCH方法: 这是fetch的实现方式: const API_URL = ‘http://localhost:3000/’ const API_PATH = ‘api/v1/’ fetch(API_URL + API_PATH + ‘tasks’, { headers: { ‘Accept’: ‘application/json’, ‘Content-Type’: ‘application/json’ }, method: ‘patch’, body: JSON.stringify( { task: task } ) }) POST,GET,DELETE设置几乎相同,它们工作正常。 知道这里发生了什么吗? 更新: 方法补丁区分大小写: […]

如何在用户提交无效输入后重新加载google recaptcha小部件

我有一个注册表单,上面有新的google recaptcha小部件。 当用户提交信息时,我们使用javascript检查validation并将问题返回到页面(例如:“请使用有效的电话号码”)。 但是,由于页面没有重新加载,当用户输入正确的信息并再次提交时(无需再次重新执行)… recaptcha不再有效,他们无法在不重新加载页面的情况下提交。 有一个很好的解决方案吗? 我可以以某种方式重新加载小部件吗? 我试过grecaptcha.render,但它没有真正做任何事情。 编辑: 当我尝试再次渲染窗口小部件时,它说“占位符元素必须为空” 我尝试清空似乎有效的元素($(’。g-recaptcha’)。empty();)然后渲染但它仍然抛出相同的错误。

格式为JS时需要无布局渲染(需要烘干)

我在控制器中有这个: respond_to do |format| format.html format.js { render :layout => false } end 当请求是Ajax时,哪些输出没有布局。 我在许多动作和控制器中复制这个。 我该如何干这个?

将JavaScript变量传递给ruby-on-rails控制器

如何从JavaScript侦听器传递变量(id): Gmaps.map.callback = function() { … … google.maps.event.addListener(marker, ‘click’, function() { var id = this.currentMarker; alert(id); }); } } 到ruby-on-rails控制器中的实例变量(@foo) def create @foo = ??? … end 在视图(表单)中正确创建关系: @foo.id) do |f| %> 谢谢!

JavaScript库在Rails中加载两次

当我将JavaScript库添加到Rails资产文件夹并使用以下命令在我的erb文件中配置: ,带有与JavaScript文件关联的类的HTML代码加载两次。 我在这附上了一个例子。 当我将JavaScript文件链接到公共文件夹时,不会发生此问题,而是JavaScript不会显示。 JavaScript的 $(function() { $(“a.page-scroll”).bind(“click”, function(a) { var b = $(this); $(“html, body”).stop().animate({ scrollTop: $(b.attr(“href”)).offset().top }, 1500, “easeInOutExpo”), a.preventDefault() }) }) Html.erb Portfolio About Me Contact 没有相关的控制台错误。 注意:没有Rails,这完全正常。