Estoy usando el siguiente código para restablecer los campos de formulario.

document.getElementById("form1").reset();//form1 is the form id.

No está funcionando. También probé con JQuery. Incluso JQuery también no funciona.

$("#reset").click(function(){
$('form1')[0].reset();
});

Mi código html es

<form name="form1" id="form1" method="post">
<h3>Personal Information</h3>
<h4>Name</h4>
<input type="text" id="fname" name="fname" maxlength=50 size=11/>
<input type="text" id="mname" name="mname" maxlength=15 size=8/>
<input type="text" id="lname" name="lname" maxlength=50 size=11/>
<input type="button" id="reset" value="Reset" onclick="Reset()"/>
</form>

Estoy siguiendo W3Schools. Aquí está mi El violín. Por favor puede explicar el error?

¿Por qué no utilizar un botón de reset <input type="reset" id="reset" value="Reset">
No siga w3schools. Por favor. Te enseña terrible prácticas.
por qué? se puede decir
w3fools.com
Eso y el cambio de onLoad a no wrap - in <head> (aunque eso es sólo específico para la jsFiddle ejemplo).

OriginalEl autor Lingasamy Sakthivel | 2013-11-29

8 Comentarios

  1. 15

    El problema es que los botones de identificación para "reset". Debido a eso, sus formas método reset tengo sobrescrito por el elemento de botón. Sólo tiene que utilizar un id diferente para tu botón.

    <form name="form1" id="form1" method="post">
    
    <h3>Personal Information</h3> 
    
    <h4>Name</h4>
    
        <input type="text" id="fname" name="fname" maxlength="50" size="11" />
        <input type="text" id="mname" name="mname" maxlength="15" size="8" />
        <input type="text" id="lname" name="lname" maxlength="50" size="11" />
        <input type="button" id="resetBtn" value="Reset" />
    </form>

    También, por favor, evitar en línea de controladores de eventos. Enlazar eventos dentro de su secuencia real.

    Ver este el violín.

    +1 Esto debe ser aceptado respuesta.
    «vale la pena señalar que todos los atributos deben ser citado en HTML (números pares)» incorrecta: w3.org/TR/html-markup/syntax.html#syntax-attributes. Atributos sólo debe ser citado si contienen caracteres especiales (tales como un espacio o un > carácter). Visite el enlace para más información.
    Wow, no sabía que. Supongo que solo se aplica a XML, a continuación,. Pero aún así, no hacer daño si la cotización de los valores. Editado de todos modos.
    Sí, en (XML y XHTML para el caso) tienes que poner los valores de atributo en comillas dobles. Pero el HTML es una forma menos estricta de lenguaje de marcado.
    optgroup no funciona con el código…. @sudee

    OriginalEl autor sudee

  2. 3

    Finalmente he resuelto mi problema. el problema es "id=reset". Porque anula el reset método . He cambiado a id="reset1". Ahora se está trabajando

    OriginalEl autor Lingasamy Sakthivel

  3. 2

    Tiene usted simplemente intente esto : Reset

    <input type="reset" value="Reset"/>
    esto no es una respuesta a mi pregunta. de acuerdo a la w3schools.com/jsref/met_form_reset.asp El método reset() restablece los valores de todos los elementos en un formulario (mismo que hacer clic en el botón de Reset).

    OriginalEl autor Ankit Tyagi

  4. 1

    Se parece a su seleting $(‘form1’) como en un elemento con un nombre de etiqueta de form1, aunque creo que en realidad quieres seleccionar el id:

    $('#form1')[0].reset();
    es el mismo que document.getElementById("form1").reset(); que OP dijo que no tenía trabajo. Por qué? No sé…
    Yo también lo intentó. Eso no es un trabajo, solo ver a mi violín
    Hola, lo siento me perdí el violín enlace.
    Esto no está funcionando.
    Ok, compruebe mi nueva respuesta stackoverflow.com/questions/20285970/…

    OriginalEl autor stilliard

  5. 1

    Si su objetivo es sólo para restablecer el formulario, usted podría intentar esto:

    <input type="reset" id="reset" value="Reset" onclick="this.form.reset();"/>
    esta es la más simple solución

    OriginalEl autor silverbeak

  6. 1

    Con jQuery, la correcta selector es :

    $('#form1') //Select with ID

    O

    $('form[name=form1]') //Select with name
    Por qué? Lo que está mal con la obtención de una referencia al elemento a través de la getElementById?
    No, su mal. ambos son lo mismo

    OriginalEl autor Elorfin

  7. 0

    He actualizado el el violín.

    Por qué vainilla js no funciona:

    Usted no tiene…

    document.getElementById("form1").reset();//form1 is the form id.

    …dentro de una función de restablecimiento. Usted podría hacer esto:

    function Reset() {
        document.getElementById("form1").reset();//form1 is the form id.
    }

    Por qué jQuery no funciona:

    Usted no necesita hacer todo lo que estás haciendo. Es mucho más simple que eso. También, busque en su ‘form1′ selector. Usted probablemente debería añadir «#form1’ en su lugar. jQuery selecciona es diferente de la función getElementByID. Como se puede suponer por el nombre, la función getElementByID ya está recibiendo el elemento con el ID; sin embargo con jQuery tiene que especificar esas cosas. También, realmente no necesita el atributo onClick con jquery.

    Uh? Puedo ver claramente function Reset() { document.getElementById("form1").reset(); } en su violín.
    Mira la diferencia entre su violín y el código publicado aquí. Específicamente, OP llamadas reset() aquí y formReset() en el violín.
    Estamos hablando de la misma violín? (jsfiddle.net/ty9rU) no veo donde formReset() se llama. Pero ese no es mi punto: Usted afirma que la declaración de document.getElementById(...) no estaba dentro de la Reset función, que es, claramente.
    Mira el atributo onClick en el post de arriba, no en el violín. Que es donde la confusión que pasó. El violín y el código de arriba no coinciden.
    Fue cambiado durante nuestra conversación.

    OriginalEl autor mborg

  8. 0

    Ok, a ver mi nuevo jsfiddle:
    http://jsfiddle.net/ty9rU/17/
    Así que cambió el nombre del botón para reset_btn

    Básicamente había un elemento llamado reset en el interior de la forma, y que provocó el problema.

    OP ya di cuenta de esto 6 min antes de publicar tu respuesta: stackoverflow.com/a/20286240/218196.
    Estoy confundido, ¿Cómo se anula?
    Debido a que los fabricantes de los navegadores pensé que sería una buena idea añadir elementos de control de formulario como propiedades de los elementos del formulario, con su ID como nombre de la propiedad (si existía). Como puede ver este es un lugar confuso comportamiento debido a que se sobreponen a otras ya existentes en las propiedades del elemento del formulario.
    Ok, muchas gracias

    OriginalEl autor stilliard

Dejar respuesta

Please enter your comment!
Please enter your name here