در asp این امکان وجود دارد که بتوانید یک زیر برنامه جاوا اسکریپت را در یک vb اسکریپت فراخوانی کنید و برعکس

 

واژه vice versa یعنی برعکس

تعریف زیر برنامه به زبان vbscript
کسانی که با vb و vbscript اشنا هستند می دانند که sub و function دو نوع زیر برنامه یا procedure هستند از هر دو می توانید استفاده کنید
مثال

 

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

 

 نکته :

  • تمام زیر برنامه ها باید درون تگ head تعریف شوند

 

sub vbproc(num1,num2)
response.write(num1*num2)
end sub

 زیر برنامه از نوع sub ( یعنی زیر برنامه ای که مقداری را به محل فاخوانی ان بر نمی گرداند )

به نام vbproc با دو پارامتر تعریف شده است

 

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

 

در یک تگ html ، برای فراخوانی زیر برنامه asp ، با دستور فراخوانی call انرا فراخوانی کرده ایم

چون فراخوانی زیر برنامه vbproc یک دستور اسکریپتی Asp است باید درون علامت باز و بسته asp انجام شود

 شما تا کنون متوجه شده اید که :

هم می توان از html ها در asp استفاده کرد و هم از asp درو ن تگ های html استفاده کرد

 
 مشاهده و اجرای برنامه کامل
 
تعریف زیر برنامه به زبان javascript 
 عبارت زیر را بالای برنامه اضافه کنید تا زیر برنامه به زبان جاوا اسکریپت تعریف کنیم

 

<%@ language="language" %>

 
 مثال

 

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

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

</body>
</html>

 
 شما می دانید که در زبان جاوا اسکریپت برای تعریف زیر برنامه فقط کلمه function وجود دارد
 و شروع و پایان ان با اکولاد باز و بسته مشخص می شود
 دستور write برای اسکریپت های جاوا و Vb مشرک است
 

 

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

برای فراخوانی زیر برنامه جاوا اسکریپت نیازی به Call نیست

اما چون از زیر برنامه جاوا اسکریپت بعنوان دستوراتی برای asp استفاده شده است

لذا باید درون علامت باز و بسته Asp انرا فراخوانی کرد

 نکته :

دستورات جاوا اسکریپت روی کامپیوتر کاربر اجرا می شوند

یعنی مرورگر کاربر انها را خوانده و اجرا می کند

 اما دستورات asp درو ن سرور اجرا شده و نتیجه ان در مرورگر کاربر اجرا می شود
 
 مشاهده و اجرای برنامه کامل
 
تفاوت بین vbscript و javascript

 زمانیکه می خواهید یک زیر برنامه به زبان vbscript یا جاوا اسکریپت را در asp ای که

بر اساس vbscript نوشته شده است فراخوانی کنید

 

 شما می توانید از call استفاده نمائید

ولی دقت کنید اگر بخواهید با call صدا بزنید باید مقدار پارارمترهای ان زیر برنامه را درون پرانتز قرار دهید

ولی اگر نخواستید از call استفاده کنید ، مقدار ارسالی برای پارامترها را نباید درون پرانتز قرار هید بلکه انها را پشت سر هم در حالیکه یک ویرگول بینشان است بعد از نام زیر برنامه بنویسید

 

مثلا :

vbproc  12,14

 

اگر هم که زیر برنامه فاقد پارامتر است موقع فراخوانی از call استفاده نکنید پرانتز هم جلوی اسمش نگذارید

 

 

 زمانیکه می خواهید یک زیر برنامه به زبان vbscript یا جاوا اسکریپت را در asp ای که

بر اساس javascript نوشته شده است فراخوانی کنید

 همیشه از پرانتز باز و بسته بعد از نام زیر برنامه موقع فراخوانی ان استفاده کنید

چه این زیر برنامه پارامتر داشته باشد چه نداشته باشد

 
برنامه ای که هم زیر برنامه vbscript دارد و هم javascript
 مثال

 

<!DOCTYPE html>
<html>
<head>
<%
sub vbproc(num1,num2)
Response.Write(num1*num2)
end sub
%>

<script  language="javascript" runat="server">
function jsproc(num1,num2)
{
Response.Write(num1*num2)
}
</script>

</head>

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

</html>

 در این برنامه چون از vbscript هم استفاده شده است پس نباید در ابتدای برنامه دستور زیر اضافه شود :

<%@ language="javascript" %>

 اما زیر برنامه دوم چون به زبان جاوا اسکریپت است لذا باید درون تگ های جاوا اسکریپت با قالب نشان داده شده در مثال ،  قرار گیرد
 
 و در خطهای بعد مشاهده می کنید که هر دو زیر برنامه را با دستور فراخوانی vbscript و درون نماد باز و بسته asp فراخوانی کرده ایم
 
 مشاهده و اجرای برنامه کامل