2017-04-15 4 views
0

空の配列を取得している理由を突き止めています。 。私はブログの投稿blog postに従って、私は最後に読んだ提案を追加しました。それがそれを実行するより実行可能な方法であるかどうか、そしてそれを行う方法があるのだろうかと思います。これを解決する最善の方法を教えてください。Javascriptがnullになるのはなぜですか都市の宝石を使用してRailsアプリケーションを選択したときの都市のレコード

私は、次のしている私のフォームでは私のルビー宝石の都市国家city state gem

を使用しています:(このフォーラムのために簡単な読み取りのために1ページ内のJavaScriptとフォームのタグを追加する)

フォームの抜粋

<div class ="form-group"> 
    <select id="states-of-country" name="project[state]"> 
     <option value="" selected="">Select Your State</option> 
     <% CS.states(:us).each do |key, value| %> 
     <option value="&lt;<%= key %>&gt;"><%= value %></option> 
     <% end %> 
    </select> 
</div> 

<div class="form-group"> 
    <select id="cities-of-state" name="project[city]"> 
     <option value="" selected="">Select Your City</option> 
    </select> 
</div> 

Javascriptを

$('#states-of-country').change(function() { 
    var input_state = $(this); 
    var cities_of_state = $("#cities-of-state"); 

    if ($(this).val() == "") { 
     cities_of_state.html(""); 
    } else { 
     $.getJSON('/cities/' + $(this).val(), function (data) { 
      // cities_of_state.empty(); 
      var opt = '<option value="" selected="">Select Your City</option>'; 
      console.log(data); 
      if (data.length == 0) {} else { 
       data.forEach(function (i) { 
        opt += '<option value="+ i +">' + i + '</option>'; 
        cities_of_state.html(opt); 
       }); 
      } 
     }); 
    } 
}); 

ルートs.rb

get 'cities/:state', to: 'application#cities' 

私は私のコンソールに行くと、私は[] にconsole.log(データ)のリターンを得る状態を選択します。データはNullです...誰かが正しい方向に私を向けることができます...> ??

ブログの誰かが、簡単にするために次の提案を述べましたが、どのように実装するのですか? blog post

にのみ、このようなものを置く必要が:

class Model < ActiveRecord::Base 
##your attributes and associations 

## your methods 
## .............. 

    def self.get_countries 
     CS.get 
    end 

    def self.get_states(country_code) 
     CS.get country_code.to_sym 
    end 

    def self.get_cities(state_code) 
     CS.get :us state_code.to_sym 
    end 
end 

答えて

0

問題だった:「> <% =値%は>私は以前ここにあった<などを除去するために必要

 
<div class="form-group"> 
 
    <select id="states-of-country" name="project[state]"> 
 
       <option value="" selected="">Select Your State</option> 
 
       <% CS.states(:us).each do |key, value| %> 
 
       <option value="<%= key %>"><%= value %></option> 
 
       <% end %> 
 
       </select> 
 

 

 
</div>

関連する問題