¿Cómo actualizo una página usando JavaScript?

Resuelto luca asked hace 13 años • 20 respuestas

¿Cómo actualizo una página usando JavaScript?

luca avatar Mar 23 '11 18:03 luca
Aceptado

Usar location.reload().

Por ejemplo, para recargar cada vez que id="something"se hace clic en un elemento con:

$('#something').click(function() {
    location.reload();
});

La reload()función toma un parámetro opcional que se puede configurar truepara forzar una recarga desde el servidor en lugar de la caché. El parámetro predeterminado es false, por lo que, de forma predeterminada, la página puede recargarse desde la memoria caché del navegador.

Roy avatar Mar 23 '2011 11:03 Roy

Hay varias formas ilimitadas de actualizar una página con JavaScript:

  1. location.reload()
  2. history.go(0)
  3. location.href = location.href
  4. location.href = location.pathname
  5. location.replace(location.pathname)
  6. location.reload(false)

    Si necesitáramos extraer el documento del servidor web nuevamente (por ejemplo, cuando el contenido del documento cambia dinámicamente), pasaríamos el argumento como true.

Puedes continuar la lista siendo creativo:

  • window.location = window.location
  • window.self.window.self.window.window.location = window.location
  • ...y otras 534 formas

var methods = [
  "location.reload()",
  "history.go(0)",
  "location.href = location.href",
  "location.href = location.pathname",
  "location.replace(location.pathname)",
  "location.reload(false)"
];

var $body = $("body");
for (var i = 0; i < methods.length; ++i) {
  (function(cMethod) {
    $body.append($("<button>", {
      text: cMethod
    }).on("click", function() {
      eval(cMethod); // don't blame me for using eval
    }));
  })(methods[i]);
}
button {
  background: #2ecc71;
  border: 0;
  color: white;
  font-weight: bold;
  font-family: "Monaco", monospace;
  padding: 10px;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.5s ease;
  margin: 2px;
}
button:hover {
  background: #27ae60;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Expandir fragmento

Ionică Bizău avatar Jun 23 '2013 09:06 Ionică Bizău