【问题标题】:Rails tokenInput values not reloadingRails tokenInput 值未重新加载
【发布时间】:2015-01-16 15:15:32
【问题描述】:

我在我的 Rails 3 应用程序中实现了一个令牌输入字段。以下是相关代码:

我的表格

<%= label_tag :tag_tokens, 'Tags' %>
<%= text_field_tag 'tag_tokens', "data-pre" => params[:tag_tokens] %>

 $(function() {
    $("#tag_tokens").tokenInput("/data/tags.json", {
      crossDomain: false,
      prePopulate: $("#tag_tokens").data("pre"),
      theme: "facebook"
    });

这是一个返回结果的搜索页面。令牌输入以及返回的值非常好。我遇到的问题是提交页面后在文本框中保留/加载的值。 text_field_tag 中的 "data-pre" =&gt; params[:tag_tokens] 代码应该可以处理这个问题,但没有用!任何帮助表示赞赏。

【问题讨论】:

    标签: ruby-on-rails jquery-tokeninput


    【解决方案1】:

    我发现我的问题是我在那里使用text_field_tag(不是 text_field),因为我需要将 data-pre 作为第三个参数(而不是第二个)传递。这是我的所有后代代码。

    查看

    <%= label_tag :tag_tokens, 'Tags' %>
    <%= text_field_tag 'tag_tokens', nil, "data-pre" => @tag_token_names.to_json %>
    

    js

    $(function() {
        $("#tag_tokens").tokenInput("/data/tags.json", {
          crossDomain: false,
          prePopulate: $("#tag_tokens").data("pre"),
          theme: "facebook"
        });
    });
    </script>
    

    路线

    match "/tags" => "data#tags", :as => 'tag_token_search'
    

    控制器

    def tags
        @tags = Tag.where("name like ?", "%#{params[:q]}%")
        respond_to do |format|
          format.html
          format.json { render :json => @tags.map(&:attributes) }
        end
      end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-05-25
      • 2014-06-27
      • 2012-05-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多