フォーカスすると消える灰色の説明文付テキストフィールドを作るjQueryプラグイン
(function(){ jQuery.fn.inputlabel = function(value, cls){ var input = this; if( value == undefined ) value = input.attr('name'); if( cls == undefined ) cls = 'inputlabel'; this.val(value).addClass(cls); this.focus(function(){ input.removeClass(cls); if(input.val() == value) input.val(''); }); this.blur(function(){ if(input.val() == '') input.val(value).addClass(cls); }); if( this.parent('form') ) this.parent('form').submit(function(){ if(input.val() == value) input.val(''); }); }; })(jQuery);
$('input#id').inputlabel(label)
とすることで、説明文付テキストフィールドを作れます。
labelを省略した場合はname属性が使用されます。
説明文はcssクラスinputlabelに設定されているので、
css側で、input.inputlabel{ color: gray }のようにすれば灰色にできます。