Tag: ruby on rails

Rails表单提交处理程序未被执行

我正在尝试整合Balanced Payments以允许用户保存他们的信用卡信息以便以后使用。 相关的视图代码和javascript文件如下,但我遇到了javascript文件中定义的提交处理程序的问题。 balanced_card.js var marketplaceUri = ‘{MY MARKETPLACE URI}’; var requestBinUrl = ‘{FORM SUBMISSION PATH}’ var debug = function(tag, content) { $(” + content + ”).appendTo(‘#result’); }; try { balanced.init(marketplaceUri); } catch (e) { debug(‘code’, ‘balanced.init error!’); } function balancedCallback(response) { var tag = (response.status < 300) ? 'pre' : 'code'; debug(tag, JSON.stringify(response)); switch(response.status) […]

为什么jQuery.cookie为单个字符串值返回“”

我在这样的Rails上设置了一个cookie, cookies[:account] = { :value => @account.to_s, :expires => 3.month.from_now } 这似乎工作得很好,一个简单的debug @account显示 — myvalue … 但是当使用jQuery.Cookie调用cookie时它会返回一个”[object Object]” 。 > $.cookie(‘account’); “[object Object]” 知道为什么会发生这种情况以及如何解决它?

在一些tr之后用jquery对表进行排序

我有这样的html表结构: …etc standart stuff… then i have Analogs … 我试过这样的剧本: jQuery(function($) { var table = $(‘table’); $(document).ready(function () { $(‘#prcol’) .each(function(){ var th = $(this), thIndex = th.index(), inverse = false; th.click(function(){ table.find(‘td’).filter(function(){ return $(this).index() === thIndex; }).sortElements(function(a, b){ return $.text([a]) > $.text([b]) ? inverse ? -1 : 1 : inverse ? 1 : -1; […]

在没有turbolinks的AJAX之后在轨道中触发js

我有一个rails4应用程序。 因为我不擅长js但我已经关闭了TURBOLINKS。 我已经阅读了很多文章,但我仍然无法弄清楚如何组织我的javascript文件。 目前我遇到了在AJAX追加后触发js代码的问题。 我有一个任务列表(索引页面)。 如果我加载页面然后我可以单击任何任务(更新它们)并且引导模式显示+以下代码正在运行,因此格式化时间并且datetimepicker可用。 如果我使用AJAX创建一个新任务(将由create.js.erb追加),然后点击该模态显示的某个特定任务,但以下代码不会被触发。 (如果我单击其余任务,那么这些任务就像页面加载时一样工作。) 我怎样才能使这个工作? 我想让代码在页面加载和页面更改时可用。 由于这是用户触发的事件,因此希望不会被触发两次。 可以为我推荐一个清晰的好解释/文章我应该如何组织我的js文件? 正如我上面提到的,我读了很多,但我更加困惑。 js文件 var ready = function() { $(‘.updatetask’).on(‘shown.bs.modal’, function (e) { alert(‘haha’); var modalId = $(this).attr(‘id’); var deadlineField = $(“#” + modalId).find($(‘.edit-task-deadline’)); var deadlineValue = $(deadlineField).attr(‘value’); var momentDeadline = moment(deadlineValue).format(‘MM/DD/YYYY hh:mm A’); $(deadlineField).val(momentDeadline); }); $(function () { $(‘.new-task-deadline’).datetimepicker({ sideBySide: true, format: ‘MM/DD/YYYY hh:mm […]

Rails -TypeError:无法将ActionController :: Parameters强制转换为文本

我正在开发一个使用jQuery Preview的网站来获取任何链接的标题,描述或favction_url。 jQuery预览: https : //github.com/embedly/jquery-preview/ 我的链接控制器有这个代码: class LinksController [:edit, :update, :destroy] def index @links = Link.all end def new @link = Link.new end def create @link = Link.new(:content => link_params, :title => params[:title], :description => params[:description], :favicon_url => params[:favicon_url]) if @link.save redirect_to root_path else render :new end end def edit end def update if […]

渲染JS.ERB会产生原始代码

执行AJAX请求时, show.js.erb呈现部分show.js.erb 。 我希望能在show.js.erb做的是写: 由于它有一个.js扩展名,我需要在JavaScript中包装它(上面的例子不会渲染部分),所以: ” OR (”); 这将呈现部分但具有原始代码 – 包括HTML和JS转义。 (‘things will go back to \”normal.\”\n\n’); 这样做的正确方法是什么? welcome#index : .ajax_load.article-content{ data: { ‘remote-url’ => article_path(@article) } } articles.js : $(document).ready(function() { $(‘.ajax_load’).each(function(index, element) { var url = $(element).data(‘remote-url’) if (url) { $.get(url, function(responseText) { $(element).html(responseText); }) } else { console.log(“missing url for ajax!”) } […]

ajax没有响应 – create.js.erb

我正在使用jquery-file-upload-rails gem在我的表单上上传预览的多个图像。 文件上传工作正常,但只有在浏览器刷新后,部分新照片才会呈现! 也许,有人可以看到,出了什么问题。 我正在调用文件上传器来加载项目编辑页面中的照片图像: = f.fields_for :photos, Photo.new do |ff| = ff.file_field :img_file, multiple: true, name: “project[photos_attributes][][img_file]”, id: ‘new_photo’ 照片控制器: def create @project = Project.find(params[:project_id]) @photo = @project.photos.create(params[:photo].permit(:img_file)) respond_to do |format| format.js format.html end end photos.js.coffee使jquery-file-uploader-rails gem工作: jQuery -> $(‘#new_photo’).fileupload dataType: ‘script’ create.js.erb $(‘#photos’).html(“”); _photo.html.haml .photo – @project.photos.each do |photo| = image_tag photo.img_file.thumb = […]

JQuery:在跟踪链接之前执行post

当我网站上有人点击链接时,我需要向服务器发送异步post。 我尝试了下面的代码,但它似乎没有在我想要的服务器上执行任务。 我认为问题在于它会在某些事情发生之前跟踪链接。 我实际上不需要等待来自服务器的响应,我只是需要它来发送它的呼叫。 谁能帮我吗? 也许如何在调用之前延迟关注链接,或者我应该注意使用$ .post? $(“#item”).click(function (ev) { $.post(link_to_something); }); Link

“ajax:成功”被召唤两次

我正在使用jquery_ujs发送简单的post请求。 我将回调函数绑定到“ajax:success”事件。 但是,对于每个成功的post,都会调用此回调两次。 我知道这与其他问题类似,但是我检查了我的源代码并且它似乎没有加载jquery_ujs.js文件两次(正如许多响应所建议的那样)。 $(“.new_item”).bind(“ajax:success”, function(xhr, data, status) { /* this is called twice for each call!*/ } 任何人有任何指针? 谢谢!

路由错误没有路由匹配“/ microposts / 304 – 删除一个Micropost – Michael Hartl的railstutorial.org第11章

我正在http://ruby.railstutorial.org上学习Michael Hartl的Ruby on Rails教程。 我在第11章遇到了麻烦,特别是在尝试删除微博时。 我遇到与此用户相同的问题路由错误没有路由匹配[GET]“/ microposts / 304” 。 他能够通过注释掉jQuery gem来解决这个问题。 然而,我并不那么幸运。 这是我目前的Gemfile: source ‘http://rubygems.org’ gem ‘rails’, ‘3.1.1’ # Bundle edge Rails instead: # gem ‘rails’, :git => ‘git://github.com/rails/rails.git’ gem ‘sqlite3’ gem ‘gravatar_image_tag’, ‘1.0.0.pre2’ gem ‘will_paginate’, ‘3.0.pre2’ gem ‘jquery-rails’ gem ‘pg’ group :development do gem ‘faker’, ‘0.3.1’ end # Gems used only for assets […]