A set of forms.
HTML JavaScript CSS ApacheConf
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
css Upgrades dependencies Jun 28, 2017
dist
img
js
ssi
test
views Upgrades dependencies Jun 28, 2017
.gitignore initial build pieces Jul 11, 2014
.htaccess added ssi for shared files Jul 16, 2014
.jenkins
.jshintrc
.travis.yml fix travis test script Jul 26, 2016
Gruntfile.js Adds tests to default grunt task Jun 28, 2017
LICENSE
README.md Updated demo url Oct 13, 2017
index.html
package.json

README.md

formcore

npm version Build Status Dependency Status

A set of forms.

Maxlength

The Maxlength component currently watches inputs and replaces returns with \r\n to normalize behavior across browsers which count returns differently.

Credit to Keith Wood for his implementation which acted as inspiration: http://keith-wood.name/maxlength.html

Numeric Input

A number of features around normalizing the behavior of <input type="number"> form fields. To start, add the data-numeric-input attribute to your <input type="number"> element:

<input type="number" data-numeric-input>

Next, include the js/numeric-input.js and js/numeric-input-init.js files.

Features

  1. Suppresses non-numeric input into the form field, similar to how Chrome desktop behaves with <input type="number">. This will also prevent scientific or E notation from being entered into the form field (since E and e are alphabetic).
  2. Works to enforce the maxlength attribute (also works with the number of digits on max)
  3. Works around bugs with <input type="number"> in Safari 6 and Firefox desktop (large numbers may be rounded or leading zeros may be truncated). In these browsers, the type is toggled to text.
  4. data-numeric-input-nav-disabled attribute option: Prevent the up and down arrow keys from incrementing and decrementing the number value.

Manual Initialization

  • Alternatively, if you don’t want to use our auto-initialization code (the numeric-input-init.js file, which relies on a global enhance event), you can manually initialize with new NumericInput( element ); You’re on the hook to prevent duplicate initialization when doing this manually.