为什么选择的插件没有更新?
问题描述:
我有模型Dog
和Category
与他们的形式在同一页上。我正在使用Chosen Plugin,当我添加一个类别时,它不会更新狗形式的类别选择。两者都是远程表单并创建相同的方式,使所述new.js.erb和create.js.erb基本上是相同的:为什么选择的插件没有更新?
宠物/ index.html.erb
<div class="tabbable">
<ul class="nav nav-tabs">
<li class="active">
<a href="#tab1" data-toggle="tab">Dog</a>
</li>
</ul>
<ul class="nav nav-tabs">
<li class="active">
<a href="#tab2" data-toggle="tab">Category</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active add-dog-form" id="tab1">
<%= render "dogs/form" %>
</div>
</div>
<div class="tab-content">
<div class="tab-pane active add-category-form" id="tab2">
<%= render "categories/form" %>
</div>
</div>
</div>
狗/ new.js.erb
$('.add-dog-form').html('<%= escape_javascript(render(:partial => 'dogs/form', locals: { dog: @dog })) %>');
狗/ create.js.erb
$('.add-dog-form').html('<%= escape_javascript(render(:partial => 'dogs/form', locals: { dog: @dog })) %>');
狗/ _form.html.erb
<%= form_for(@dog, :remote => true) do |f| %>
<%= f.text_field :name %>
<%= f.select :category_ids, Category.all.collect {|c| [c.name, c.id]}, {},
{ :multiple => true, :class => "category-select" } %>
<%= f.submit %>
<% end %>
的application.js
jQuery(function($) {
// Chosen Select Menu
$('.category-select').chosen().trigger("liszt:updated");
});
任何人工作,这个插件和/或不知道如何更新选择菜单?
答
在application.js
相反的:
$('.category-select').chosen().trigger("liszt:updated");
用途:
$('.category-select').trigger("liszt:updated");
的'chosen'插件,如果我这样做不会被触发。 – LearningRoR 2012-08-04 14:21:56
是的,检查您的文档链接标题下的“更新动态选择”的解释。 – 2012-08-04 14:37:36
奇怪的是,我可以触发'.chosen'并获取插件,但是当我使用'.trigger'时,它会返回到常规选择菜单。为了以防万一,我尝试重新安装并将文件从供应商文件夹移至资产。尽管如此,仍然没有运气。 – LearningRoR 2012-08-04 15:23:00