ASP Procedures
In ASP you can call a JavaScript procedure from a VBScript and vice versa.
Procedures
The ASP source code can contain procedures and functions:Example
<!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>
Example
<%@ language="javascript" %>
<!DOCTYPE html>
<html>
<head>
<%
function jsproc(num1,num2)
{
Response.Write(num1*num2)
}
%>
</head>
<body>
<p>Result: <%jsproc(3,4)%></p>
</body>
</html>
Differences Between VBScript and JavaScript
When calling a VBScript or a JavaScript procedure from an ASP file written in VBScript, you can use the "call" keyword followed by the procedure name. If a procedure requires parameters, the parameter list must be enclosed in parentheses when using the "call" keyword. If you omit the "call" keyword, the parameter list must not be enclosed in parentheses. If the procedure has no parameters, the parentheses are optional.When calling a JavaScript or a VBScript procedure from an ASP file written in JavaScript, always use parentheses after the procedure name.
VBScript Procedures
VBScript has two kinds procedures:
- Sub procedure
- Function procedure
VBScript Sub Procedures
A Sub procedure:- is a series of statements, enclosed by the Sub and End Sub statements
- can perform actions, but does not return a value
- can take arguments
Sub mysub()
some statements
End Sub
orSub mysub(argument1,argument2)
some statements
End Sub
Example
Sub mysub()
response.write("I was written by a sub procedure")
End Sub
VBScript Function Procedures
A Function procedure:- is a series of statements, enclosed by the Function and End Function statements
- can perform actions and can return a value
- can take arguments that are passed to it by a calling procedure
- without arguments, must include an empty set of parentheses ()
- returns a value by assigning a value to its name
Function myfunction()
some statements
myfunction=some value
End Function
orFunction myfunction(argument1,argument2)
some statements
myfunction=some value
End Function
Example
function myfunction()
myfunction=Date()
end function
Calling a Procedure
This simple function procedures is called to calculate the sum of two arguments:Example
Function myfunction(a,b)
myfunction=a+b
End Function
response.write(myfunction(5,9))
When you call a procedure you can use the Call statement, like this:
Call MyProc(argument)
Or, you can omit the Call statement, like this:MyProc argument