2017-06-21 70 views
0

我是新来的铁路,一直在尝试几个小时寻找答案,但仍然没有运气。 我创建了一个“全选”按钮,点击后,区域应该自动填充所有地区代码。 在此先感谢您的帮助!Rails:使用jquery来改变简单的表单输入值

局部_form:

<div id = "select_regions_form"> 
    <%= render partial: 'reports/regions_form', locals: { f: f, all_regions: @all_regions } %> 
    <%= button_tag "Select All", :id => "select_all", :class => "btn btn-small btn-inverse", :type => "button" %> 
    </br> 
</div> 

parial _region_form.html.erb:

<div class="row"> 
    <div id = "region_list" class="col-md-4"> 
    <%= f.input :regions, collection: all_regions, 
    label_method: :region_code, value_method: :id, input_html: { multiple: true }%> 

    </div> 
</div> 

的javascript:

(function($){ 
    "use strict"; 

    $(document).ready(function(){ 
    $("#select_all").click(function() { 
     $("input:regions").val(*all the region codes*); 

    }); 
    }); 
})(jQuery); 

回答

0

parial _region_form.html.erb:

将ID添加到选择输入或使用由rails自动创建的可用ID(FYI:您可以在浏览器中检查并查看该ID)。

在这里,我为选择字段添加ID select_regions

<%= f.input :regions, collection: all_regions, 
    label_method: :region_code, value_method: :id, input_html: { multiple: true, id: 'select_regions' }%> 

的javascript:

设置属性selectedtrue上的全部选择单击所有选项。

$(document).ready(function(){ 
    $("#select_all").click(function() { 
    $('#select_regions option').prop('selected', true); 
    }); 
}); 
+0

嗨,这仍然没有真正做任何事情,因为我点击按钮 –

+0

在哪个文件中你有脚本。在单独的JS文件或形式部分? –