Ir para conteúdo

POWERED BY:

Arquivado

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

Lúcio Gomes

Chamada de função

Recommended Posts

Eu tenho 2 arquivos:

 

funcao.asp

Sub Teste()
	If Acao = 1 Then
		Valor = 1
	ElseIf Acao = 2 Then
		Valor = 2
 	Else
		Response.Write("Nenhum valor foi definido")
		Response.End()
	End If
End sub

 

 

index.asp

<!--#include file="../funcao.asp" -->
<% call Teste %>

<%=Valor%>

Mas não exibe nada na variável Valor.

Já se eu colocar essa função no arquivo index.asp (onde está o código) daí funciona.

 

Ou se eu mudar a função Teste () para:

Sub Teste()
	If Acao = 1 Then
		Response.Write("1")
	ElseIf Acao = 2 Then
		Response.Write("2")
 	Else
		Response.Write("Nenhum valor foi definido")
		Response.End()
	End If
End sub

Daí ele exibe o resultado certo, ou seja, se ação for 1 ele mostra o número 1 e se Acao for 2 ele mostra o número 2...

 

Alguém poderia me explicar porque quando eu chamo essa função de outro arquivo ela exibe o Response.Write mas não a variável Valor?

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

a função está errada, você precisa retornar o valor

 

function Teste(v)

If v= 1 Then

teste = 1

ElseIf v= 2 Then

teste= 2

Else

teste = "Nenhum valor foi definido"

End If

End function

 

response.write(teste(1))

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que ele fez não está totalmente errado. Ele criou um procedimento e não uma função. Mas faltou alguns detalhes.

<%
public valor

sub Teste(acao)
	valor = acao
	If Acao = 1 Then
		Response.Write("1")
	ElseIf Acao = 2 Then
		Response.Write("2")
	Else
		Response.Write("Nenhum valor foi definido")
		Response.End()
	End If
end sub

call Teste(1)

response.write valor
%>
Mas se quer realmente uma função, deve ser feito como o jonathandj sugeriu.

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.