2011-07-12 21 views
7

Tengo un formulario en una página donde el usuario escribe algo y luego se devuelve un resultado y se muestra en la página. ¿Es posible que tenga un botón que elimine los resultados de búsqueda y el formulario simultáneamente?¿Es posible borrar un formulario y restablecer (recargar) la página con un botón?

Sé que puede usar el botón <input type="reset" value="Reset"/> en el formulario para restablecer el formulario y también usar el siguiente código para volver a cargar la página.

<input type="button" value="Clear Results" onClick="window.location.reload()">

¿Es posible tener el botón de hacer ambas cosas es decir, borrar los resultados de búsqueda y restablecer el formulario? ¿Se puede hacer usando JavaScript? Si es así, ¿cómo?

Gracias

+3

'' o ¿me falta algo? – rockerest

+0

¿No vuelve a cargar la página para restablecer todo? – zellio

+1

@Mimisbrunnr No, no es así. Pruébelo usted mismo: escriba algo en el cuadro de búsqueda en la parte superior de esta página y presione Actualizar. Tu valor sigue ahí. La solución de Rockerest debería funcionar – wanovak

Respuesta

10

Si desea la funcionalidad de los dos fragmentos publicados, simplemente puede combinarlos.

<input type="reset" value="Reset" onClick="window.location.reload()"> 

(No, ahora se puede aceptar mi respuesta XD)

+2

No use JavaScript en línea, es un infierno para mantener. – katspaugh

+1

¡Punto tomado sobre JavaScript en línea! – zik

+1

Dónde habríamos estado, si no fuera por #StackOverflow – Som

5

usando jQuery, hacer algo como esto en la página;

$(document).ready(function() { 
    resetForms(); 
}); 

function resetForms() { 
    for (i = 0; i < document.forms.length; i++) { 
     document.forms[i].reset(); 
    } 
} 

y luego sólo tiene que utilizar su segunda entrada, formularios de actualización automática cuando se carga la página copia de seguridad.

12

Soy un fan de la sugerencia de @ MikeyHogarth ya que llama independientemente de cómo se actualiza la página. Esta es una de esas raras ocasiones en las que encuentro que javascript directo es más simple que jquery, así que solo quería agregar el código para eso.

$(document).ready(function() { 
    resetForms(); 
}); 

function resetForms() { 
    document.forms['myFormName'].reset(); 
} 

Este utiliza el atributo de nombre del formulario, y si usted prefiere el uso de la forma atributo id utilizar esto en su lugar:

document.getElementById('myFormId').reset(); 
1

puede simplemente redirigir la página a la ubicación actual con este código:

$('[data-command="reset"]').click(function() {  
    window.location.href = window.location.href; 
} 

<input type="button" value="Clear Results" data-command="reset"> 
Cuestiones relacionadas