• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
عدم اجرای کد ajax
#1
سلام . من اولین بارمه کد ajax رو با استفاده از آموزش این بخش ایجاد کردم. میخوام بدونم اشکال این کد چیه که اجرا نمیشه ؟
کدهای آجاکس :
کد:
<script type="text/javascript">
    function GetXmlHttpObject()
    {
    var xmlHttp=null;
    try
     {
     // Firefox, Opera 8.0+, Safari
     xmlHttp=new XMLHttpRequest();
     }
    catch (e)
     {
     //Internet Explorer
     try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
     catch (e)
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
     }
    return xmlHttp;
    }
    
    
    function checkUser()
    {
      xmlHttp=GetXmlHttpObject();
      if (xmlHttp==null)
      {
        alert ("Browser does not support HTTP Request");
        return;
      }
    
      url='index1.php?user='+document.getElementById('user').value;
      //alert(url);
      xmlHttp.onreadystatechange=stateChanged;
      xmlHttp.open("GET",url,true);
      xmlHttp.send();

    }
    
    function stateChanged()
    {
    if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
     {
        document.getElementById("txtHint").innerHTML=xmlhttp.responseText;

      }
    }

</script>

کدهای html این صفحه :
کد:
<form >
<input type="text" id="user" />
    <input type="button" value="check"  onclick="checkUser()"/></td>
</form>
<p>resul: <span id="txtHint"></span></p>
کدهای صفحه ی index1.php
کد:
<?php

$user=$_GET['user'];
if($user == "pary")
{
$response="welcome";
echo $response;
}
?>
این یک کد ساده برای تست کردن خودمه نه هدف خاص دیگه ای .
میخوام با submit شدن چک کنه ، اگر user برابر pary بود بنویسه welcome
آرام باش ؛ توكل كن ؛ تفكر كن و سپس آستينها را بالا بزن , آنگاه دستان خداوند را خواهي ديد كه زودتر از تو دست به كار شده است.امام علي عليه السلام.
  پاسخ
تشکر شده توسط :
#2
توی فانکشن stateChanged شیء xmlHttp رو با حرف کوچیک نوشتید، یعنی نوشتید:
کد:
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;

که باید بنویسید:

کد:
document.getElementById("txtHint").innerHTML=xmlHttp.responseText;

ولی من این اسکریپت رو ترجیح میدم:
کد:
<script type="text/javascript">
    function checkUser()
    {
        
    var xmlhttp;
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
          xmlhttp=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
          xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }

    
      var url='index1.php?user='+document.getElementById('user').value;
      
      //alert(url);
      xmlhttp.onreadystatechange=function()
      {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
            document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    
        }           
      }
      xmlhttp.open("GET",url,true);
      xmlhttp.send();

    }
    


</script>

آموزش AJAX
هر که با مرغ هوا دوست شود - خوابش آرامترین خواب جهان خواهد بود.
  پاسخ
تشکر شده توسط : pary_daryayi
#3
نقل قول:ولی من این اسکریپت رو ترجیح میدم
من اصن هیچکدومو ترجیح نمیدم. ای‌جکس خوندم و شنیدم (مدت ها پیش/بدون منبع) مشکلاتی داره که اون مشکلات در جی‌کوئری برطرف شده. jQuery.ajax()
غایب
  پاسخ
تشکر شده توسط :
#4
نقل قول:مشکلاتی داره

؟؟؟؟؟
هر که با مرغ هوا دوست شود - خوابش آرامترین خواب جهان خواهد بود.
  پاسخ
تشکر شده توسط :
#5
گفتم که حمید، من فقط خوندم و شنیدم. سرچ هم کردم امروز از معایب آجاکس خوندم ولی چیزی نبودن که بگیم استفاده مستقیمش این معایب رو داره ولی جی‌کوئری نداره.
غایب
  پاسخ
تشکر شده توسط : hamid_80386


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان