Usa __dopostback() en JavaScript

Anika Tabassum Era 20 junio 2023
Usa __dopostback() en JavaScript

En los casos generales, la función __dopostback() está asociada a ASP.NET. Pero en el siguiente ejemplo, no incluiremos ningún fragmento de código .NET correspondiente; más bien, explicaremos el principio de funcionamiento.

La función __dopostback() de JavaScript toma dos parámetros, EventTarget y EventArgument. Estos argumentos permiten identificar el evento que hará que se dispare el método post.

Posteriormente, con el segundo argumento, explicaremos cualquier mensaje o acción necesaria a la que se hace referencia tras un post válido.

Revisemos las cercas de código a continuación para tener una idea aproximada de cómo funciona la función. Para entender mejor un ejemplo con archivos aspx, puede contar con este hilo explícito.

Usa la función __dopostback() en JavaScript

Aquí, la instancia tendrá algunos campos de entrada “ocultos” con el id __EVENTTARGET y __EVENTARGUMENT para obtener el valor que podría haberse establecido. Independientemente de estas entradas, la función principal se activa cuando se presiona el botón de acción.

El “botón” posterior muestra la función “__dopostback (objetivo, argumento)”, donde el objetivo es el evento de acción y el argumento se establece en un archivo aspx. Cualesquiera que sean las condiciones o los roles que se deban jugar, se deciden con base en el argumento.

Por lo general, cuando la acción del formulario no está configurada, se refiere a publicar los datos del formulario y recarga una nueva instancia de esa misma página. Y si se establece la acción, la publicación se ejecutará en la página actual y luego se dirigirá a la página web de destino.

¿Qué pasaría si tuviéramos un cuadro desplegable para la entrada? En ese caso, la primera instancia de la página web consideraría tratar con el servidor en el método GET.

Y para cada próxima recarga, la lista de “opciones” se agrega nuevamente, y la pila queda así. Por lo tanto, si establecemos una condición para la solicitud GET (inicial), la lista no se expandirá más tarde para los métodos POST.

Puedes entender claramente esto explicación.

Sin embargo, la función __dopostback() era para asegurar una publicación adecuada del servidor con respecto a los contenidos web, que podrían haber sido alterados más tarde.

Fragmento de código:

<body>
    <form name="form1" method="post" action="" id="form1">
<div>
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
</div>
<script type="text/javascript">
var theForm = document.forms['form1'];
if (!theForm) {
    theForm = document.form1;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
</script>
    </div>
    <button id="LinkButton1" onsubmit="javascript:__doPostBack('LinkButton1','')">Submit</a>
    </form>
</body>
</html>

Producción:

javascript dopostback

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook

Artículo relacionado - JavaScript Function