class IRuby::Input::Multiple
Public Instance Methods
widget_css()
click to toggle source
# File lib/iruby/input/multiple.rb, line 25 def widget_css <<-CSS .iruby-multiple { display: table; min-width: 25%; } .form-control.iruby-multiple-container { display: table; } CSS end
widget_html()
click to toggle source
# File lib/iruby/input/multiple.rb, line 56 def widget_html widget_label do div class: 'form-control iruby-multiple-container' do params = { size: @size, multiple: true, class: 'iruby-multiple', :'data-iruby-key' => @key } select **params do @options.each do |o| option o, selected: @default.include?(o) end end end end end
widget_js()
click to toggle source
# File lib/iruby/input/multiple.rb, line 37 def widget_js <<-JS $('.iruby-multiple').change(function(){ var multiple = $(this); multiple.data('iruby-value', []); multiple.find(':selected').each(function(){ multiple.data('iruby-value').push($(this).val()); }); if (multiple.data('iruby-value').length == 0) { multiple.data('iruby-value', null); } }); $('.iruby-multiple').trigger('change'); JS end