easy-Autocomplete 实现问题:javascript 未执行且 JSON 未被处理

easy-Autocomplete implementation problem: javascript not executing and JSON not being processed

我是 Rails 的新 Ruby 开发人员,正在开发一个使用 easy-Autocomplete 插件的应用程序。我遵循了有关它的教程,但无法使其完全正常工作。 javascript 不会自动执行,手动调用时,不会处理生成的 JSON。

使用输入的数据并调用服务器的javascript正在运行。然后控制器进行搜索并创建 JSON 对象。

但是 JSON 似乎从未返回到浏览器,因为该字段从不显示包含返回数据的下拉列表。 (在服务器端,我已验证正在生成正确的数据)。

另一个问题是Assets文件中的javascript从来没有被执行过。如果我手动将 javascript 输入到 Chrome Devtools 控制台,我只会在该字段上执行它。一旦输入,服务器调用就会触发。但是结果 JSON 没有出现在该字段的下拉列表中。

在浏览器中使用简单的 javascript 时,easy-Autocomplete 插件和样式表工作正常(五种颜色并在字段中键入任何字母会导致正确显示和从数据中选择数组).

#  The Javascript:

document.addEventListener("turbolinks:load", function() {
  $input = $("[id='basics']")

  var options = {
    getValue: "name",
    url: function(phrase) {
      return "/search.json?q=" + phrase;
    },
    categories: [
      {
        listlocation: "users",
        header: "Users",
      }
    ]
  };

  $input.easyAutocomplete(options);
});

#  The controller action:

  def search
    @users = User.ransack(email_cont: params[:q]).result(distinct: true).limit(5)

    respond_to do |format|
      format.html {}
      format.json {
        @users = @users.limit(3)
      }
    end
  end

我让它在一个新的干净的应用程序中工作。需要一些 json 构建器修改,但 javascript 执行并最终呈现结果。我遵循的教程中 javascript

的 json 生成器代码不正确