(function($) { jQuery.initInput = { defaultValue: '', errorMessage: '', wdmClassName: 'with-default-message' } jQuery.fn.initInput = function(arg1,arg2) { return this.each(function(){ var elem = $(this); var form = elem.parents('form'); var wdm = $.initInput.wdmClassName; if(elem.attr('placeholder')){ var msg = elem.attr('placeholder'); var emsg = arg1 || $.initInput.errorMessage; }else{ var msg = arg1 || $.initInput.defaultValue; var emsg = arg2 || $.initInput.errorMessage; } //init var init = function(){ if(elem.val() == '' || elem.val() == msg){ elem.val(msg).addClass(wdm); } } //set event var setEvent = function(){ elem.focus(function(){ elem.removeClass(wdm); if(elem.val() == msg){ elem.val(''); } }).blur(init); form.submit(function(){ if(emsg == ''){ //Allaw empty if(elem.val() == msg){ elem.val(''); } }else{ //Disallow empty if(elem.val() == '' || elem.val() == msg){ alert(emsg); elem.notify('alert'); return false; } } return true; }); } //fire function init(); setEvent(); }); }; })(jQuery);