1.9.2 • Published 10 years ago

formjs v1.9.2

Weekly downloads
54
License
-
Repository
github
Last release
10 years ago

Build Status

FormJS

Allows you easily re-style native form elements across all browsers and falls back to native form elements for mobile devices. Also, provides a simple API to manipulate form elements with javascript. Supports IE10+, all modern browsers, and mobile.

UI Elements include:

  • Checkboxes
  • Button Toggles
  • Input Fields
  • Dropdowns
  • Entire forms

Usage

Styling form elements

Let's say you wanted to style a dropdown menu with the following html:

<select>
    <option value="MD">Maryland</option>
    <option value="VA" selected>Virginia</option>
    <option value="DC">Washington, DC</option>
</select>

With this library, you can do this:

var dropdown = new Dropdown({
    el: document.getElementsByTagName('select')[0]
});

Which will change your HTML into this:

<div class="dropdown-wrapper">
    <div class="dropdown-container">
        <div class="dropdown-value-container">Virginia</div>
        <div class="dropdown-option-container">
            <div class="dropdown-option" data-value="MD">Maryland</div>
            <div class="dropdown-option dropdown-option-selected" data-value="VA">Virginia</div>
            <div class="dropdown-option" data-value="DC">Washington, DC</div>
        </div>
    </div>
    <select>
        <option value="MD">Maryland</option>
        <option value="VA" selected>Virginia</option>
        <option value="DC">Washington, DC</option>
    </select>
</div>

Then you can style the dropdown using CSS (and just hide the <select> element).

Programmatically change the element's value

Each class comes with a set of utility methods so you can change the elements via JS. Using the example above, you could do the following:

// set the selected value programmatically
dropdown.setValue('DC');

// get the new data value
dropdown.getValue(); // => "DC"

// get the display value
dropdown.getDisplayValue(); // => "Washington, DC"

Listening to change events

You can also listen to events on form elements. Given the following input element...

<input type="text" value="" placeholder="Enter text here" />

You can do the following:

var inputField = new InputField({
    el: document.getElementsByTagName('input')[0],
    onChange: function (el) {
        // user has finished typing into the field!
    },
    onKeyDownChange: function (el) {
        // the user has typed a key into the field!
    }
});
// set the value
inputField.setValue('My text'); // set new value
// get the new value
inputField.getValue(); // => "My text"

Examples

Examples can be found in the examples page.

Release History

  • 2015-03-26 v1.0.0 Official release.
1.9.2

10 years ago

1.9.1

10 years ago

1.9.0

10 years ago

1.8.3

10 years ago

1.8.2

10 years ago

1.8.0

10 years ago

1.7.0

10 years ago

1.6.0

10 years ago

1.5.0

10 years ago

1.4.0

10 years ago

1.3.0

10 years ago

1.2.2

10 years ago

1.2.1

10 years ago

1.2.0

10 years ago

1.1.2

10 years ago

1.1.0

10 years ago

0.3.2

10 years ago

1.0.5

11 years ago

1.0.4

11 years ago

1.0.3

11 years ago

1.0.2

11 years ago

1.0.1

11 years ago

1.0.0

11 years ago