Há tempos queria escrever algo sobre recuperar o valor padrão de um campo de um formulário. Mas foi depois de ler o Leandro, em jQuery resetDefaultValue plugin, é que resolvi finalizar esse texto.

O que ele escreveu é exatamente o que irei escrever. Com uma diferença, a função - ou melhor, plugin - é destinada para quem utiliza a biblioteca JQuery.

Se você nem sabe o que é JQuery, seria interessante dar uma pesquisada. Mas caso queira apenas recuperar o valor padrão de um campo, pode continuar lendo.

A função é simples. Quando o usuário clica no campo, o valor padrão será apagado. Se ele digitar algo, muito bem, senão, quando ele sair do campo, o valor padrão deve retornar. Algo comum de acontecer em alguns campos de busca ou login de e-mail - como no do IG, por exemplo.

function returnDefaultValue() {
  // objeto de todos os elementos 'input'
  var elInput = document.getElementsByTagName("input");
  for(var x = 0; x < elInput.length; x++) {
    // objeto a ser trabalhado
    var obj = elInput[x];
    // se for um campo do tipo 'text' e tiver um valor padrão
    if(obj.type == "text" && obj.defaultValue != "") {
      // função que limpa o valor ao se clicar no campo
      obj.onclick = function() { this.value = ""; }

      // função que volta ao valor padrão
      obj.onblur = function() { if(this.value == "") this.value = this.defaultValue; }
    }
  }
}

Veja o código em ação

O ideal é chamar a função após o carregamento da página:

window.onload = returnDefaultValue;

Diferentemente da função do Leandro, essa só funciona com campos do tipo text.

A propriedade respopnsável por recuerar o valor padrão do campo é a [objeto].defaultValue.

Leitura recomendada: Javascript Form Object