Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ewerton93

[Resolvido] chama uma função em javascript no response.write

Recommended Posts

gostaria de chama um function em javascript no response.write

 

fiz dessa forma ta dando erro nenhum

 

ASP - response.write("<script language='javascript'>verif();</script>")

 

//javascritp -

 

function verif()

{

if(confirm('Deseja Enviar Outro E-mail?'))

{

document.location.href='pagina.asp';

}

}

 

desde ja agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

so tem que tomar cuidado com as aspas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz esse teste e ve se vai:

 

response.write("<script> alert('lalalalalal')</script>")

 

Aki foi de boa...

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

tomando este cuidado funciona de boa mesmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ewerton, o q tah acontecendo é o seguinte....

 

o ASP é processado TODO pra depois ser gerado o JS.....

 

ou seja.... enqto você chama a funcao JS pelo Response.Write, a mesma ainda não foi criada na página....

 

você pode resolver de 2 formas:

 

1 - criar um arquivo .js e carrega-lo no inicio do ASP;

 

2 - ou simplesmente mudar a sequencia:

 

<script language="javascript">

function verif() {

if(confirm('Deseja Enviar Outro E-mail?')) {

document.location.href='pagina.asp';

}

}

</script>

 

<%

Response.Write "<script language='javascript'>verif();</script>"

%>

 

 

testei seu cod e vi que o erro, é só por isso.......

 

abraços....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só deixa eu tirar uma dúvida aqui.

Eu já entendi que ASP é server-side e Java Script é client-side.

 

Mas como colocar a função antes do código ASP daria efeito?

De qualquer forma ele não seria carregado depois do ASP?

Compartilhar este post


Link para o post
Compartilhar em outros sites

você esta 100% certo Giancarlo Braga

 

a funcao nao eh chamada no response.write, nada é... só são escritas as marcações e dados....

 

depois de pronta eh q a pagina eh enviada ao cliente, q aí sim interpreta as marcacoes e os scripts client-side.

 

oq pode estar errado é como o pessoal colocou, ou as aspas ou a ordem q você dispõe o elemento no seu html.

 

você nao pode colocar o texto com a chamada da funcao (com response write ou na mao) antes da funcao estar declarada...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ah, entendi!

 

Então a explicação é a seguinte:

Você não pode colocar o texto com a chamada da função Java Script antes dessa função ser declarada ou importada de um .JS.

Porque simplesmente a função Java Script não é chamada no lado do servidor e sim no lado do cliente. Afinal, o Response.Write vai escrever algo no lado do cliente e assim então o código client-side vai funcionar, no caso, se a função já foi declarada vai funcionar corretamente e como ele expôs no tópico a função JS tinha sido declarada depois do código ASP e assim nesse escopo ela não existe ainda.

 

Se eu não me engano há uma situação semelhante no Assembly, chamado de 'problema de referência futura'.

Compartilhar este post


Link para o post
Compartilhar em outros sites

é isso que estamos faando

 

voce deve mudar a ordem do codigo apenas

 

ai se aparecer outro erro voce posta aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

é isso que estamos faando

 

voce deve mudar a ordem do codigo apenas

 

ai se aparecer outro erro voce posta aqui

e ai pessoal obrigado problema resolvido ai vai uma forma que esta funcionando aki.

 

coloquei a função em dentro do JS

 

function verif() {

if(confirm('Deseja Enviar Outro E-mail?'))

{

document.location.href='pagina.asp';

}

else

{

document.location.href='paginaprincipal.asp';

}

}

 

e chamei depois assim

 

<script src="js/comando.js"></script>

 

depois chamei a função em asp

 

response.write("<script language='javascript'>verif();</script>")

 

e ai vualar funcionou

 

vlw a todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.