jQuery.fn.DefaultValue = function(text){
    return this.each(function(){
		//Make sure we're dealing with text-based form fields
		if(this.type != 'text' && this.type != 'password' && this.type != 'textarea')
			return;

		//Store field reference
		var fld_current=this;

		//Set value initially if none are specified
        if(this.value=='') {
			this.value=text;
			this.style.color="#aaaaaa";
		} else {
			//Other value exists - ignore
			return;
		}

		//Remove values on focus
		if ($) {
			$(this).focus(function() {
				if(this.value==text || $.trim(this.value)=='') {
					this.value='';
					this.style.color="";
				}
			});
		} else {
			jQuery(this).focus(function() {
				if(this.value==text || jQuery.trim(this.value)=='') {
					this.value='';
					this.style.color="";
				}
			});
		}

		//Place values back on blur
		if ($) {
			$(this).blur(function() {
				if(this.value==text || $.trim(this.value)=='') {
					this.value=text;
					this.style.color="#aaaaaa";
				}
			});
		} else {
			jQuery(this).blur(function() {
				if(this.value==text || jQuery.trim(this.value)=='') {
					this.value=text;
					this.style.color="#aaaaaa";
				}
			});
		}

		//Capture parent form submission
		//Remove field values that are still default
		if ($) {
			$(this).parents("form").each(function() {
				//Bind parent form submit
				$(this).submit(function() {
					if(fld_current.value==text) {
						fld_current.value='';
					}
				});
			});
		} else {
			jQuery(this).parents("form").each(function() {
				//Bind parent form submit
				jQuery(this).submit(function() {
					if(fld_current.value==text) {
						fld_current.value='';
					}
				});
			});
		}
    });
};
