Skip to content

thogg4/formbuilder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

formbuilder

This project has many changes to it, but it is heavily based on the jquery.formbuilder project. (https://github.com/botskonet/jquery.formbuilder)

Changes:

  • There is no longer a checkbox group. Each checkbox element created is just one checkbox.
  • Rearranged defaults object:
var defaults = {
      // must have jquery ui included to make sortable.
      sortable: false,
      save: {
        input: false,
        complete_function: function(xhr, status) {},
        success_function: function(data, status) {},
      },
      load: {
        input: false
      },
      control_box_target: false,
      save_button_target: false,
      save_button_classes: false,
      classes_of_save_buttons: false, //override this with an array of classes of buttons you want to save the form
      serialize_prefix: 'frmb',
      types: {
        text: {
          icon: '',
          title: 'Text Field',
          label: '',
          value: 'input_text',
          placeholder: 'Enter your question or text here'
        },
        paragraph: {
          icon: '',
          title: 'Paragraph Field',
          label: '',
          value: 'textarea',
          placeholder: 'Enter your question or text here'
        },
        checkbox: {
          icon: '',
          title: 'Checkbox',
          label: '',
          value: 'checkbox',
          placeholder: 'Enter your question or text here'
        },
        radio: {
          icon: '',
          title: 'Radio Group',
          label: '',
          value: 'radio',
          placeholder: 'Enter your question or text here',
          option_placeholder: 'Option'
        },
        select: {
          icon: '',
          title: 'Select Box',
          label: '',
          value: 'select',
          placeholder: 'Enter your question or text here',
          option_placeholder: 'Option'
        }
      },
      messages: {
        controls_label: 'Add an item',
        save: "Save",
        add_new_field: "Add New Field...",
        title: "Title",
        label: "Label",
        select_options: "Options",
        add: "Add Option",
        remove_message: "Are you sure you want to remove this element?",
        remove: "Remove",
        selections_message: "Allow Multiple Selections",
        hide: "Hide",
        required: "Required",
        show: "Show",
        checked: 'Checked'
      }
    };
  • made list items optionally sortable (see defaults)
  • changed controls from a select box to a list of list items
  • added optional icons for control list items
  • various changes to JSON that is submitted to save.url

Usage

This is now a gem. So:

gem install formbuilder || gem 'formbuilder' # in Gemfile

CSS

    *= require formbuilder

JS

//= require formbuilder
$('any_element').formbuilder({options_to_override_defaults})

Use the Formbuilder class to render html from the json that the javascript generates.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

About

jQuery formbuilder gem

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published