آموزش Ajax بخش سوم

آموزش Ajax بخش سوم

توسط amin8505 | گروه مقاله های آموزشی | 1394/07/18

نظرات 0

 ارسال ِيک درخواست به سرور

جهت بدرقه ِي ِيک درخواست به سرور, از متدهاِي open() و send() استفاده مِي کنِيم.
متد open() سه آرگومان مِي پذِيرد. آرگومان اول براِي تعِيِين متد(GET ِيا POST) جهت ارسال درخواست استفاده شود. آرگومان دوم URL اسکرِيپت سمت سرور را مشخص مِي کند.آرگومان سوم مشخص مِي کند که درخواست باِيد به طور ناهمزمان کنترل(handled) شود ِيا نه.متد send() , درخواست را به سرور همراهِي و بدرقه مِي کند .با فرض اِينکه فاِيل HTML وASP در ِيک مسِير هستند, کد به صورت زِير است:
xmlHttp.open("GET","time.asp",true);
xmlHttp.send(null);

اکنون باِيد در مورد زمان اجرا ِي تابع آجاکس تصمِيم گِيرِي کنِيم. براِي مثال هنگامِي که کاربر در فِيلد username متنِي را تاِيپ مِي کند , اجازه دهِيم تابع در"پشت صحنه " اجرا شود.مانند زِير:
<form name="myForm">
Name: <input type="text"
onkeyup="ajaxFunction();" name="username" />
Time: <input type="text" name="time" />
</form>

فاِيل testAjax به روز شده با قطعه کد با لا به صورت زِير است:
<html>
<body>
<script type="text/javascript">
function ajaxFunction()
{
  var xmlHttp;
try
{
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
catch (e)
{
    // Internet Explorer
    try
{
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
catch (e)
{
      try
{
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
catch (e)
{
        alert("Your browser does not support AJAX!");
        return false;
        }
      }
    }
    xmlHttp.onreadystatechange=function()
      {
      if(xmlHttp.readyState==4)
        {
        document.myForm.time.value=xmlHttp.responseText;
        }
      }
    xmlHttp.open("GET","time.asp",true);
    xmlHttp.send(null);
  }
</script>
<form name="myForm">
Name: <input type="text"
onkeyup="ajaxFunction();" name="username" />
Time: <input type="text" name="time" />
</form>
</body>
</html>

در بخش بعدِي AJAX application را با اسکرِيپت"time.asp" کامل مِي کنِيم.
اسکرِيپت سمت سرور ASP
اسکرِيپت سمت سرور ASP
اکنون قصد دارِيم اسکرِيپتِي اِيجاد کنِيم که  زمان جارِي سِيستم را نماِيش دهد.
خصوصِيت responceText (که در بخشهاِي قبلي توضِيح داده شد)، داده ِي بازگشتِي از سرور را ذخِيره مِي کند . در اِينجا مِي خواهِيم زمان جارِي را برگردانِيم.کد نوشته شده در time.asp به صورت زِير است:
<%
response.expires=-1
response.write(time)
%>


توجه:  با استفاده خصوصِيت Expire  مدت زمان cache ِيک صفحه قبل از منقضِي شدن آن درِيک browser را تنظِيم مِي کند.اگر کاربر صفحه ِي مشابهِي را قبل از زمان انقضا بر گرداند، نسخه ِي cache شده نشان داده مِي شود. براِي اِينکه صفحه هرگز cache نشود،  باِيد Response.Expire=-1 باشد.
 

اجراِي AJAX Application
با تاِيپ متنِي در textbox مربوط بهName وسپس کليک در داخل text box مربوط به time نتِيجه را خواهِيد دِيد. Text box مربوط به time بدون لود دوباره ِي صفحه،  زمان سرور را از فاِيل time.asp  مِي گِيرد.

 

0 نظر

نظر محترم شما در مورد مقاله های وب سایت برنامه نویسی و پایگاه داده

نظرات محترم شما در خدمات رسانی بهتر ما را یاری می نمایند. لطفا اگر مایل بودید یک نظر ما را مهمان فرمائید. آدرس ایمیل و وب سایت شما نمایش داده نخواهد شد.

حرف 500 حداکثر