This plugin offers the ability to auto fill form.
If the first parameter is an URL, the plugin will fetch the returned JSON object via AJAX. Or you can pass a pre-fetched JSON object so that no AJAX will be performed.
The second parameter is an object containing other options.
type - AJAX request type
data - Data to be sent to the server
errorTrigger - if the JSON object contains this as its key, error callback will be triggered. Useful if server side returns a custom error message
mSelectCheckName - Default to false. True: look for multiple select boxes with their name. False: look for multiple select boxes with their ID
ajaxError - callback function for AJAX error
error - error callback if the JSON object is empty, or contains errorTrigger as its key
beforeFillForm - callback function to be executed before start filling the form
beforeFill - callback function to be executed BEFORE filling a form element
afterFill - callback function to be executed AFTER filling a form element
complete - callback function to be executed when all form elements have been filled
Basi Example with pre-fetched data
var data = { username: 'peter', gender: 'M' }; $('form').autoFill(data);
Full Example using AJAX:
`$(‘form’).autoFill(‘get_data.php’, { type: ‘GET’, // AJAX request method
data: { record_id: 2 }, // Request parameters
// if the JSON object contains this key, // error callback will be triggered. // Useful if server side returns a custom error message errorTrigger: ‘error’,
// Default to false. // True: look for multiple select boxes with their name // False: look for multiple select boxes with their ID mSelectCheckName: false,
ajaxError: function(error, form) { // do something if AJAX error occurs alert(error); $(form).hide(); }, error: function(form) { // do something if error occurs alert(‘Unable to fill form!’); $(form).hide(); }, beforeFillForm: function(form) { // do something before start filling the form $(form).show(); }, beforeFill: function(key, value, form) { // do something BEFORE filling an element
if(key == ‘password’) return false; // return false to skip current form element
if(key == ‘gender’ && value == ‘female’) alert(“OH! She’s a lady!”); }, afterFill: function(key, value, form) { // do something AFTER filling an element if(value == ‘blah’) confirm(‘What are you talking about?’);
if(key == ‘zip’ && value == ‘’) return false; // return false to skip all pending form elements }, complete: function(processed, form) { // do something when all elements have been filled alert(processed + ‘ elements have been filled!’); } });`