JavaScript => window.open() dentro do if {}

4 respostas
G

Pessoal,

estou com um pequeno problema, que não consegui solucionar sozinha.
Tenho uma função no javascript que tem uma condicional if simples.

function validaprazofinal(pfinal) {

if ( x != y)

alert(“O campo prazo final foi alterado!”);

window.open(“historicoPFinal.jsp?cod_projeto=”+cod_projeto, “HISTÓRICO”, “height = 300, width = 400”);
else

alert(“O campo prazo final não foi alterado!”);	

window.open(“historicoPFinal2.jsp?cod_projeto=”+cod_projeto, “HISTÓRICO”, “height = 300, width = 400”);
}

A condição está OK, o alert() funciona, mas o window.open() não funciona. Passa direto! Já coloquei e tirei chaves no if e no else, já coloquei e tirei ponto e virgula. Não sei o que pode estar errado!
Tirando o alert() a função não executa nada! Coloquei pra verificar se estava validando a condição.
Alguém tem alguma noção???

4 Respostas

lcegatti

Só para checar a sintaxe

window.open (url, "mywindow","menubar=0,resizable=1,width=800,height=600");

aparentemente a sua está certa, o que eu não vi é onde vc está declarando o atributo cod_projeto, que vc utiliza para concatenar na sua url passada para a pop-up.

[]'s

G

lcegatti,

na verdade esse atributo é uma variavél jsp que está declarada em uma linha anterior à tag .
Mas mesmo colocando assim

window.open(“historicoPFinal.jsp?cod_projeto=”+<%=cod_projeto%>, “HISTÓRICO”, “height = 300, width = 400”);

Não funciona.

Bruno_Cardoso

Experimente:

window.open("historicoPFinal.jsp?cod_projeto=&lt;%=cod_projeto%&gt;", "HISTÓRICO", "height = 300, width = 400");

<%=cod_projeto%> é traduzido para texto no render da página, portanto podes ficar dentro das " " do url.

David

function validaprazofinal(pfinal) { if ( x != y) { alert("O campo prazo final foi alterado!"); window.open("historicoPFinal.jsp?cod_projeto=<%= cod_projeto %>", "HISTÓRICO", "height = 300, width = 400"); } else { alert("O campo prazo final não foi alterado!"); window.open("historicoPFinal2.jsp?cod_projeto=<%= cod_projeto %>", "HISTÓRICO", "height = 300, width = 400"); } } Faltou também colocar as chaves no if e no else…

Criado 22 de agosto de 2008
Ultima resposta 22 de ago. de 2008
Respostas 4
Participantes 4