/* jQuery.defaultvalue
 * 
 * Purpose: Sets a default value on a form input. Value is removed on focus and
 *          restored on blur, if no text is entered. The value is removed on form
 *          submission if an alternate value has not been specified
 *
 * Usage: $('input#field_id').defaultvalue('This is the default value')
 *        $("input[name='inputname']").defaultvalue("My Default Value");
 *
 * Morgan Massena - 2008-12-11
 *
 */

(function($) {
	
	$.fn.defaultvalue = function() {
		
		// Scope
		var elements = this;
		var args = arguments;
		var c = 0;
		
		return(
			elements.each(function() {				
				
				// Default values within scope
				var el = $(this);
				var def = args[c++];
				
				// set default value, if empty
				if (el.val() == "")
					el.val(def);
				
				el.focus(function() {
					if (el.val() == def)
						el.val("");
				});
				
				el.blur(function() {
					if(el.val() == "")
						el.val(def);
				});
				
				el.parents('form').bind('submit', function() {
					if (el.val() == def)
						el.val("");
				});
			})
		);
	}
})(jQuery)
