当我使用city state gem在Rails应用程序中选择我的状态时,为什么我的Javascript会为城市返回null记录

时间:2017-04-15 14:34:01

标签: javascript html ruby-on-rails ruby-on-rails-4 rubygems

我一直在努力弄清楚为什么我会得到空阵列而没有在选择状态时为城市取得结果。我按照博客文章blog post添加了一条我最后阅读的建议,并想知道这是否是一种更可行的方式来实现它以及如何实现它。你能帮我解决一下这个问题吗?

我正在使用我的ruby gem city-state city state gem

在我的表格中,我有以下内容:(在一个页面中添加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);
                });
            }
        });
    }
});

的routes.rb

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

当我进入我的控制台并选择状态时,我得到[]的返回 的console.log(数据);数据是空的...任何人都可以指向正确的方向...&gt; ??

博客上有人提到了以下建议,以使其更容易,但您如何实现? 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

1 个答案:

答案 0 :(得分:0)

问题是:&#34;&gt;&lt;%= value%&gt;我需要删除&lt;以前在这里等。

&#13;
&#13;
Execution exception (In /app/controllers/Employees.java around line 449)
NoClassDefFoundError occured : javax/ws/rs/core/Response$Status

play.exceptions.JavaExecutionException: javax/ws/rs/core/Response$Status
        at play.mvc.ActionInvoker.invoke(ActionInvoker.java:229)
        at Invocation.HTTP Request(Play!)
Caused by: java.lang.NoClassDefFoundError: javax/ws/rs/core/Response$Status
        at module.enums.ErrorCodeEnum.<init>(ErrorCodeEnum.java:69)
        at module.enums.ErrorCodeEnum.<clinit>(ErrorCodeEnum.java:7)
        at controllers.Employees.holidayRequest(Employees.java:449)
        at play.mvc.ActionInvoker.invokeWithContinuation(ActionInvoker.java:527)
        at play.mvc.ActionInvoker.invoke(ActionInvoker.java:478)
        at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:454)
        at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:449)
        at play.mvc.ActionInvoker.invoke(ActionInvoker.java:161)
        ... 1 more
Caused by: java.lang.ClassNotFoundException: javax.ws.rs.core.Response$Status
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        ... 9 more
&#13;
           
&#13;
&#13;
&#13;