Sign up to create your own snipts, or login.

Public snipts » ritcheyer's snipts » Clear Input Using Prototype, Part II

posted on Dec 28, 2009 at 6:35 p.m. EST in 
  • <script src="http://ajax.googleapis.com/ajax/libs/prototype/1.6.1.0/prototype.js" type="text/javascript" charset="utf-8"></script>
    <script type="text/javascript" charset="utf-8">
    	document.observe('dom:loaded', function() {
    
    		// Get all input elements with input class;
    		var blurElements = $$('input.input');
    
    		// Create global scope for storing default values;
    		var scope = {};
    
    		// Iterate through all targeted elements;
    		for (var idx = 0, len = blurElements.length; idx < len; idx++) {
    			var el = blurElements[idx];
    			scope[el.identify()] = el.value;
    			el.observe('blur', function(event) {
    				var e = event.element();
    				var defaultValue = this[e.identify()];
    				if(e.value == '' || e.value == defaultValue) {
    					e.value = defaultValue;
    				}
    			}.bindAsEventListener(scope));
    
    			el.observe('focus', function(event) {
    				var e = event.element();
    				if (e.value == this[e.identify()]) {
    					e.clear();
    				}
    			}.bindAsEventListener(scope));
    		}
    	});
    </script>
    

    copy | embed

0 Comments

Sign up, or login to leave a comment.