Sha256: 257289a472626e415097b3928ec24b10891d5fc9cdc554aa17e4a56cb1f031f5

Contents?: true

Size: 1.66 KB

Versions: 1

Compression:

Stored size: 1.66 KB

Contents

# frozen_string_literal: true
module Formtastic
  module Inputs

    # Outputs a simple `<input type="hidden">` wrapped in the standard `<li>` wrapper. This is
    # provided for situations where a hidden field needs to be rendered in the flow of a form with
    # many inputs that form an `<ol>`. Wrapping the hidden input inside the `<li>` maintains the
    # HTML validity. The `<li>` is marked with a `class` of `hidden` so that stylesheet authors can
    # hide these list items with CSS (formtastic.css does this out of the box).
    #
    # @example Full form context, output and CSS
    #
    #   <%= semantic_form_for(@something) do |f| %>
    #     <%= f.inputs do %>
    #       <%= f.input :secret, :as => :hidden %>
    #     <% end %>
    #   <% end %>
    #
    #   <form...>
    #     <fieldset>
    #       <ol>
    #         <li class="hidden">
    #           <input type="hidden" id="something_secret" name="something[secret]">
    #         </li>
    #       </ol>
    #     </fieldset>
    #   </form>
    #
    #   form.formtastic li.hidden { display:none; }
    #
    # @see Formtastic::Helpers::InputsHelper#input InputsHelper#input for full documentation of all possible options.
    class HiddenInput 
      include Base
      
      def input_html_options
        super.merge(:required => nil).merge(:autofocus => nil)
      end
      
      def to_html
        input_wrapping do
          builder.hidden_field(method, input_html_options)
        end
      end
      
      def error_html
        +""
      end
      
      def errors?
        false
      end
      
      def hint_html
        +""
      end
      
      def hint?
        false
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
formtastic-5.0.0 lib/formtastic/inputs/hidden_input.rb