Javascript rails应用中的Ajax请求给出错误

Javascript rails应用中的Ajax请求给出错误,javascript,jquery,ruby-on-rails,ajax,ruby-on-rails-3,Javascript,Jquery,Ruby On Rails,Ajax,Ruby On Rails 3,在我的rails应用程序中,我将作为 $.ajaxSetup({ url:“/get\u paypal\u按钮” }); 结束 当我使用调试器并获得它给出的@hash值时(这是正确的) 但是ajax请求正在执行我为防止出错而编写的代码,它得到的是空响应 我已经尝试了所有的方法,但完全没有结果,因为类似的代码几天前还在运行。也许格式的设置并不像您所期望的那样: 选中作为Ajax调用的一部分接受来自浏览器的标题。您可以在Firebug的网络选项卡中看到它 或者将format转储到日志中并检查它。我看

在我的rails应用程序中,我将作为 $.ajaxSetup({ url:“/get\u paypal\u按钮” });

结束

当我使用调试器并获得它给出的@hash值时(这是正确的)

但是ajax请求正在执行我为防止出错而编写的代码,它得到的是空响应


我已经尝试了所有的方法,但完全没有结果,因为类似的代码几天前还在运行。

也许
格式的设置并不像您所期望的那样:

选中作为Ajax调用的一部分接受来自浏览器的
标题。您可以在Firebug的网络选项卡中看到它


或者将
format
转储到日志中并检查它。

我看到您在哈希上使用了
。\u json
-您不需要调用此函数。我也尝试过,但仍然得到空响应:(在数据类型中使用小写json会有帮助吗?不受大写或小写的影响,这也是正确的。请在下面找到完整的标题:请求URL:Request HeaderView source Accept:application/json,text/javascript,/;q=0.01内容类型:application/x-www-form-urlencoded Origin:Referer:User Agent:Mozilla/5.0(X11;Linux i686)AppleWebKit/535.19(KHTML,如Gecko)Chrome/18.0.1025.142 Safari/535.19 X-request-With:XMLHttpRequest表单数据视图URL编码的募捐者id:1金额:13货币:新加坡元评论:匿名:虚假捐赠者电子邮件:a@a.comother除此之外:{readyState 0,responseText“”,状态0,状态文本,“错误”}
      var dataToSend = { fundraiser_id: <%= @fundraiser.id %>,  
        amount:  $("#amount").val(),
        currency: $('#donor_donation_currency').val(),
        comment: $('#donor_donation_comment').val(),
        anonymous: $("#donor_donation_anonymous").is(":checked"),
        donor_email: $('#email').val(),
        donor_name: $('#name').val(),
        donor_city: $('#city').val(),
        donor_country: $('#country').val() };

      $.ajax({
        type: "POST",
        dataType:'JSON',
        async: true,
        data:dataToSend,
        success: function(json){
          $('#id_amount').val(json.amount);
          $('#custom_content').val(json.custom);
        },
        error:function (xhr, ajaxOptions, thrownError){
          console.dir(xhr);
          console.dir(thrownError);
        }
      });
def get_paypal_button
  @fundraiser = Fundraiser.where(:id => params[:fundraiser_id]).last
  if params[:currency] == 'INR'
         amount_in_sgd = params[:amount].to_f/@fundraiser.sgd_to_inr.to_f
  elsif params[:currency] == 'USD'
         amount_in_sgd = params[:amount].to_f*@fundraiser.usd_to_sgd.to_f
  else
         amount_in_sgd = params[:amount].to_f
  end

  puts '----------finding donor-------------'
  @donor = Donor.find_or_initialize_by_email(params[:donor_email])
  @donor.update_attributes(:name => params[:donor_name], :city => params[:donor_city], :country => params[:donor_country])
  custom = @donor.id.to_s + "::" + params[:anonymous].to_s + "::" + params[:comment].to_s

  @hash = {:amount => amount_in_sgd, :custom => custom}.to_json
  respond_with(@hash) do |format|
    format.json { render :json =>  @hash }
  end
"{\"amount\":15.0,\"custom\":\"2::false::\"}"