Home

Awesome

formToObject.js

Build Status NPM package NPM downloads

Convert HTML forms with all their fields and values to multi-dimensional JavaScript objects

Install

Node.js

Browser

<!-- Include minified script (~2kb) -->
<script src="dist/formToObject.min.js"></script>

Usage

Using the DOM node id.

formToObject('myFormId');

Using the actual DOM Node reference.

formToObject(document.getElementById('myFormId'));

Result

{
  saveSettings: 'Save',
  name: 'Serban',
  race: 'orc',
  settings: {
     input: 'keyboard',
     video: {
        resolution: '1024x768',
        vsync: 'on'
     }
  }
}

XHR - sending form data

$.ajax({
  'url': '/app/settings/save/',
  'type': 'post',
  'data': formToObject('saveSettingsForm'),
  'success': function(r){}
});
Browser support

IE 8, Firefox 3.5, Chrome, Safari, Opera 10, every mobile browser.

Screenshot