Procedury ASP
W ASP możesz wywołać procedurę JavaScript z VBScript i odwrotnie.
Procedury
Kod źródłowy ASP może zawierać procedury i funkcje:
Przykład
<!DOCTYPE html>
<html>
<head>
<%
sub vbproc(num1,num2)
response.write(num1*num2)
end sub
%>
</head>
<body>
<p>Result: <%call vbproc(3,4)%></p>
</body>
</html>
Wstaw wiersz <%@ language=" language " %> nad znacznikiem <html>, aby napisać procedurę/funkcję w innym języku skryptowym:
Przykład
<%@ language="javascript" %>
<!DOCTYPE html>
<html>
<head>
<%
function jsproc(num1,num2)
{
Response.Write(num1*num2)
}
%>
</head>
<body>
<p>Result: <%jsproc(3,4)%></p>
</body>
</html>
Różnice między VBScript a JavaScript
Podczas wywoływania procedury VBScript lub JavaScript z pliku ASP napisanego w VBScript można użyć słowa kluczowego „call”, po którym następuje nazwa procedury. Jeśli procedura wymaga parametrów, lista parametrów musi być ujęta w nawiasy podczas używania słowa kluczowego „call”. W przypadku pominięcia słowa kluczowego „call” lista parametrów nie może być ujęta w nawiasy. Jeśli procedura nie ma parametrów, nawiasy są opcjonalne.
Wywołując procedurę JavaScript lub VBScript z pliku ASP napisanego w JavaScript, zawsze używaj nawiasów po nazwie procedury.
Procedury VBScript
VBScript ma dwa rodzaje procedur:
- Procedura podrzędna
- Procedura działania
Procedury podrzędne VBScript
Procedura podrzędna:
- to seria oświadczeń, ujętych w oświadczeniach Sub i End Sub
- może wykonywać akcje, ale nie zwraca wartości
- może argumentować
Sub mysub()
some statements
End Sub
lub
Sub mysub(argument1,argument2)
some statements
End Sub
Przykład
Sub mysub()
response.write("I was written by a sub procedure")
End Sub
Procedury funkcji VBScript
Procedura funkcji:
- to seria instrukcji, ujęta w instrukcje Function i End Function
- może wykonywać akcje i zwracać wartość
- może przyjmować argumenty, które są do niego przekazywane przez procedurę wywołującą
- bez argumentów, musi zawierać pusty zestaw nawiasów ()
- zwraca wartość poprzez przypisanie wartości do jego nazwy
Function myfunction()
some statements
myfunction=some value
End Function
lub
Function myfunction(argument1,argument2)
some statements
myfunction=some value
End Function
Przykład
function myfunction()
myfunction=Date()
end function
Wywołanie procedury
Ta prosta procedura funkcji jest wywoływana w celu obliczenia sumy dwóch argumentów:
Przykład
Function myfunction(a,b)
myfunction=a+b
End Function
response.write(myfunction(5,9))
Funkcja „moja funkcja” zwróci sumę argumentu „a” i argumentu „b”. W tym przypadku 14.
Kiedy wywołujesz procedurę, możesz użyć instrukcji Call w następujący sposób:
Call MyProc(argument)
Możesz też pominąć oświadczenie Call w następujący sposób:
MyProc argument
Więcej przykładów
Jak wywołać zarówno procedurę JavaScript, jak i procedurę VBScript w pliku ASP.