js.erb文件尚未呈现

时间:2014-01-29 01:39:59

标签: javascript jquery ruby-on-rails ajax

我正在尝试在Ruby on Rails上进行Ajax调用。当我选择2个collection_select时,第三个必须由Ajax呈现。我是Ruby on Rails的新手,所以如果有人能帮助我,我会感激不尽。

_form.html.erb:

<%= form_for(@preco_servico) do |f| %>      

  <div class="field">
    <%= f.label :produto %>
    <%= collection_select(:preco_servico, :produto, Produto.order('tipo'), :tipo, :tipo) %>
  </div>
  <div class="field" >
    <%= f.label "Análise" %>
    <%= collection_select(:preco_servico, :analise, TipoAnalise.order('tipo'), :tipo, :tipo) %>
  </div>
  <div class="field" id="parametro-select", :remote >
  </div>  
  ...
<% end %>

的application.js:

jQuery(function($) {    
    $("#preco_servico_analise").change(function() {
      var produto_id = $('select#preco_servico_produto :selected').val();  
      var analise_id = $('select#preco_servico_analise :selected').val();     
        $.get('/preco_servicos/update_parametro/' + produto_id + '/' + analise_id, function(data){                      
           $("#parametro-select").html(data);
        })
      return false;
    });
})

控制器上的方法:

def update_parametro
    @precos = PrecoServico.where(:analise => params[:analise], :produto => params[:produto])   

    @sub_parametros = [] 


    @precos.each do |preco|

      @sub_parametros = Parametro.where("nome NOT IN (?)", preco.parametro)

    end

    respond_to do |format|
      format.js
    end

  end

我已经在application.html.erb中包含了以下代码:

<%= javascript_include_tag "application" %>
    <%= csrf_meta_tags %>

文件update_parametro.js.erb:

sub_parametro <%= collection_select(:preco_servico, :parametro, @sub_parametros, :nome, :nome) %>

在控制台上我得到了这个:

  

开始GET“/ preco_servicos / update_parametro / produto2 / analise2”   对于127.0.0.1在2014-01-28 23:25:21 -0200处理方式   PrecoServicosController#update_parametro as / 参数:   { “preco_servicos”=&gt; “中preco_servicos”,   “update_parametro”=&gt;“update_parametro”,“produto”=&gt;“produto2”,   “analise”=&gt;“análise2”} PrecoServico负载(0.2ms)   SELECT preco_servicos。* FROM preco_servicos WHERE   preco_servicosanalise ='análise2'和preco_servicosproduto   ='produto2'渲染preco_servicos / update_parametro.js.erb(0.5ms)8ms完成200 OK(浏览次数:6.0ms | ActiveRecord:0.2ms)

它告诉我它已渲染,但屏幕上没有任何变化,萤火虫中没有任何内容。

0 个答案:

没有答案