Javascript location.reload(); não funciona

16/04/2019

7

Bom dia.

Não consigo fazer um script funcionar ele é devolvido em uma string via AJAX. Envio uma requisição AJAX e o PHP responde uma mensagem contendo

<div>
    <p>Login bem sucedido.</p>
    <p>Redirecionamento em ação.</p>
</div>
<script> location.reload(); </script>


Esta instrução é "printada" na tela.

Nunca tive esse problema. É a primeira vez.
Responder

Posts

16/04/2019

Edcp_poa

Ah! Encontrei!

Encontrei uma forma fácil de lidar com o problema. A função success() do javascript ficou assim:

function success(value) {
    if (value.length > 0) {
        // msg = elmento div#msg
        msg.innerHTML = value;
        var scripts = msg.getElementsByTagName("script");
        for (var i = 0; i < scripts.length; i++) {
            eval(scripts[i].innerText);
        }
    } else {
        msg.innerHTML = ('<div id="error"><div class="inform"><p>Nenhum valor retornado.</p></div></div>');
    }
}


Post: https://stackoverflow.com/questions/1197575/can-scripts-be-inserted-with-innerhtml

Espero que ajude alguém.

Grande abraço e obrigado a todos!

Responder