Procedury ASP


V ASP můžete volat proceduru JavaScriptu z VBScriptu a naopak.


Postupy

Zdrojový kód ASP může obsahovat procedury a funkce:

Příklad

<!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>

Chcete-li zapsat proceduru/funkci v jiném skriptovacím jazyce , vložte řádek <%@ language=" language " %> nad značku <html>:

Příklad

<%@ language="javascript" %>
<!DOCTYPE html>
<html>
<head>
<%
function jsproc(num1,num2)
{
Response.Write(num1*num2)
}
%>
</head>
<body>

<p>Result: <%jsproc(3,4)%></p>

</body>
</html>


Rozdíly mezi VBScriptem a JavaScriptem

Při volání procedury VBScript nebo JavaScript ze souboru ASP napsaného ve VBScript můžete použít klíčové slovo "call" následované názvem procedury. Pokud procedura vyžaduje parametry, musí být seznam parametrů při použití klíčového slova "call" uzavřen v závorkách. Pokud klíčové slovo "call" vynecháte, seznam parametrů nesmí být uzavřen v závorkách. Pokud procedura nemá žádné parametry, jsou závorky volitelné.

Při volání procedury JavaScript nebo VBScript ze souboru ASP napsaného v JavaScriptu vždy používejte závorky za názvem procedury.


Procedury VBScript

VBScript má dva druhy procedur:

  • Dílčí postup
  • Funkční postup

Dílčí procedury VBScript

Dílčí postup:

  • je řada příkazů uzavřená mezi příkazy Sub a End Sub
  • může provádět akce, ale nevrací hodnotu
  • může přijmout argumenty
Sub mysub()
  some statements
End Sub

nebo

Sub mysub(argument1,argument2)
  some statements
End Sub

Příklad

Sub mysub()
  response.write("I was written by a sub procedure")
End Sub

Procedury funkcí VBScript

Postup funkce:

  • je řada příkazů uzavřená mezi příkazy Function a End Function
  • může provádět akce a může vracet hodnotu
  • může převzít argumenty, které mu předá volající procedura
  • bez argumentů, musí obsahovat prázdnou sadu závorek ()
  • vrátí hodnotu přiřazením hodnoty k jeho názvu
Function myfunction()
  some statements
  myfunction=some value
End Function

nebo

Function myfunction(argument1,argument2)
  some statements
  myfunction=some value
End Function

Příklad

function myfunction()
  myfunction=Date()
end function

Volání procedury

Tato jednoduchá funkční procedura je volána k výpočtu součtu dvou argumentů:

Příklad

Function myfunction(a,b)
myfunction=a+b
End Function

response.write(myfunction(5,9))

Funkce "myfunction" vrátí součet argumentu "a" a argumentu "b". V tomto případě 14.

Když voláte proceduru, můžete použít příkaz Call, jako je tento:

Call MyProc(argument)

Nebo můžete výpis volání vynechat takto:

MyProc argument

Další příklady


Jak volat proceduru JavaScriptu i proceduru VBScript v souboru ASP.