Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa a noite a todos.
Estou desenvolvendo um sistema que utiliza uma função JavaScript pra auxiliar na exclusão dos registros. É bem simples:
<a href='' onclick="confExclusao('aluno.php', <?= trim($row->ID) ?>)">
O link manda como parâmetro a página e o id. Agora a função confExclusao:
function confExclusao(url, idLocacao) {
var resposta = confirm("Deseja excluir esse registro?");
if (resposta == true) {
window.location.href = url+"?id="+id;
}
}
A função recebe a página e o id como parâmetro e então utiliza window.location.href para enviar isso pra mesma página e na página em questão há um trecho que deleta o registro:
if (isset($_GET['id'])) {
$aluno = new Escola();
if ($aluno->desativa($_GET['id'])) {
echo $mensagem->erroMsg("Aluno deletado com sucesso", "aluno.php");
}
}
O problema é que window.location.href não funciona (já tentei as variações do window.location). Alguém tem ideia do que possa ser? O mais engraçado é que funcionava...
Fico aguardando qualquer ajuda - só falta isso pra eu entregar o sistema.
Um grande abraço a todos.Antes de mais nada, muito obrigado Omar, pela resposta.
O "não funciona" significava literalmente não funcionar, nesse caso. Eu clicava no botão excluir e nada acontecia, usava o alert em todas as variáveis e constava o esperado, o que me levou a perceber que o erro estava no window.location.href.
Eu cometi o pecado de não colocar a variável que vem como parâmetro e sim o id, como você bem observou.
No mesmo dia eu acabei percebendo o erro grotesco, corrigi; mas acabei não atualizando aqui e quando vim, você já havia respondido.
De qualquer modo, muito obrigado por dispor de seu tempo e me ajudar. Um grande abraço e muito sucesso.
Mas solucionou?
E erro de parâmetro eu cometo também "e muito", acontece geralmente porque sempre porque defino nomes bem mais detalhados na produção, enquanto que na versão final no nome é bem mais genérico para reduzir os KB's do arquivo assim ela carrega mais rápido. No entanto ao depurar esse tipo de erro é logo escancarado no console do browser.
Resolveu sim Omar.
Entretanto, voltou a acontecer numa outra página e então fiz a troca do a por button, conforme você havia sugerido. Resolvido.
Muito obrigado pela ajuda amigo.
Grande abraço.
O problema em ajudar você, é saber em qual questão de "não funciona" você quer dizer.
Como assim não funciona?
Enfim, algumas ponderações para se levar em conta:
-
A tag <a> já é um vetor de redirecionamento, use uma tag <button> porque nesse contexto aí quando clicado na tag <a> a confirmação é exibida porém o redirecionamento fica no aguardo, assim que essa confirmação deixar de existir o redirecionamento vem para o mesmo arquivo e a função não se completa. (você pode está removendo o atributo href para evitar isso)
-
Na função confExclusao no segundo parâmetro idLocacao você envia os dados porém ao concatenar você usa algo que não existe dentro da função.
Erro encontrado:
>
3 horas atrás, ment0r disse:
>
Citar
window.location.href = url+"?id="+idLocacao;