Borrar el valor por defecto en un input

Buenas,

Tengo el siguiente campo:

<%= text_field_tag “merchant_name”, “By name”, :class => “input” %>

“By name” es el valor por defecto que identifica el campo. Sin embargo
quiero que cuando el usuario introduzca algún dato ese By Name se borre
solo
para facilitar la introduccion de informacion.

Alguna idea?

Un saludo y muchas gracias

On Jul 7, 2007, at 7:03 PM, Fernando S. wrote:

Tengo el siguiente campo:

<%= text_field_tag “merchant_name”, “By name”, :class => “input” %>

“By name” es el valor por defecto que identifica el campo. Sin
embargo quiero que cuando el usuario introduzca algún dato ese By
Name se borre solo para facilitar la introduccion de informacion.

Eso se haria por JavaScript. En application.js tendriamos algo como:

function clear_default(input) {
if (!input.getAttribute(‘already_cleared’)) {
input.value = ‘’;
input.setAttribute(‘already_cleared’, true);
}
}

El flag sirve para que solo borremos el contenido en el primer click.
Es posible que necesites un campo oculto adicional que indique que
efectivamente el usuario puso algo, ya que el usuario sobre el papel
podria escribir “By Name” y en el servidor puede que necesitemos
diferenciarlo. Eso ya son detalles que dependen de la aplicacion misma.

Para que funcion, por ejemplo:

<%= text_field_tag …, :onclick => ‘clear_default(this)’ %>

Existen algunos grupos sobre JavaScript por ahi.

– fxn