%51 تخفیف، با کد Noruz98 روی تمام آموزش ها، بمناسبت سال نو ...!
زمان باقی مانده (آخرین فرصت ها)
سبد (0)

تبلیغات

آموزش آجاکس asp

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


مثالی از آجاکس و asp

مثال زیر نشان می دهد که چطور یک صفحه ی وب می تواند هنگامی که کاربر کاراکترهایی را درون فیلد input وارد می کند، با یک سرور وب ارتباط برقرار کند:

مثال

درون کادر زیر یک نام را وارد کنید:

نام: 

پیشنهادات:


توضیح مثال

در مثال بالا، هنگامی که کاربر کاراکتری را درون فیلد input وارد می کند، تابعی به نام ()showHint اجرا می شود. تابع مورد نظر به وسیله ی رویداد onkeyup صدا زده می شود.

کد HTML مورد نظر را در زیر مشاهده می کنید:

مثال

<html>
<head>
<script>
function showHint(str) {
    if (str.length == 0) { 
        document.getElementById("txtHint").innerHTML = "";
        return;
    } else {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
            }
        };
        xmlhttp.open("GET", "gethint.asp?q=" + str, true);
        xmlhttp.send();
    }
}
</script>
</head>
<body>

<p><b>Start typing a name in the input field below:</b></p>
<form> 
First name: <input type="text" onkeyup="showHint(this.value)">
</form>
<p>Suggestions: <span id="txtHint"></span></p>
</body>
</html>
خودتان امتحان کنید »

توضیح کد بالا:

ابتدا بررسی می کنیم که آیا فیلد input خالی است یا نه(str.length==0). اگر این چنین باشد، محتوای txtHint را پاک می کنیم و از تابع خارج می شویم.

اما اگر که فیلد input خالی نباشد، اعمال زیر را انجام می دهیم:

  • ایجاد یک شیء XMLHttpRequest
  • ایجاد تابع مورد نظر که قرار است هنگامی که پاسخ سرور آماده شد، اجرا شود. 
  • ارسال درخواست به یک فایل ASP در سرور(gethint.asp)
  • توجه کنید که پارامتر q به gethint.asp?q="+str اضافه شده است. 
  • متغیر str محتوای فیلد input را نگهداری می کند. 

     فایل ASP یا همان gethint.asp

فایل ASP مورد نظر یک آرایه از نام ها را بررسی می کند و نام متناظر را به مرورگربرمی گرداند:

<%
response.expires=-1
dim a(30)
'Fill up array with names
a(1)="Anna"
a(2)="Brittany"
a(3)="Cinderella"
a(4)="Diana"
a(5)="Eva"
a(6)="Fiona"
a(7)="Gunda"
a(8)="Hege"
a(9)="Inga"
a(10)="Johanna"
a(11)="Kitty"
a(12)="Linda"
a(13)="Nina"
a(14)="Ophelia"
a(15)="Petunia"
a(16)="Amanda"
a(17)="Raquel"
a(18)="Cindy"
a(19)="Doris"
a(20)="Eve"
a(21)="Evita"
a(22)="Sunniva"
a(23)="Tove"
a(24)="Unni"
a(25)="Violet"
a(26)="Liza"
a(27)="Elizabeth"
a(28)="Ellen"
a(29)="Wenche"
a(30)="Vicky"

'get the q parameter from URL
q=ucase(request.querystring("q"))

'lookup all hints from array if length of q>0
if len(q)>0 then
  hint=""
  for i=1 to 30
    if q=ucase(mid(a(i),1,len(q))) then
      if hint="" then
        hint=a(i)
      else
        hint=hint & " , " & a(i)
      end if
    end if
  next
end if

'Output "no suggestion" if no hint were found
'or output the correct values
if hint="" then
  response.write("no suggestion")
else
  response.write(hint)
end if
%>
تمامی محصولات و خدمات این وبسایت، حسب مورد دارای مجوزهای لازم از مراجع مربوطه می‌باشند و فعالیت‌های این سایت تابع قوانین و مقررات جمهوری اسلامی ایران است.
logo-samandehi مجوز نشر دیجیتال از وزرات فرهنگ و ارشاد اسلامی پرداخت آنلاین -  بانک ملت معرفی بیاموز در شبکه سه پرداخت آنلاین - بانک اقتصاد نوین پرداخت آنلاین - بانک سامان
 
دوره های آموزشی راه اندازی کسب و کارهای اینترنتی
تبلیغات اینترنتی