Ajax脚本无法运行。。(AJAX和PHP)

Ajax脚本无法运行。。(AJAX和PHP),php,ajax,dom,object,Php,Ajax,Dom,Object,我正在尝试学习ajax,下面是脚本,但它不会运行。它的 只需一个脚本即可接受2个用户输入,并在提交时显示它们 在ID为info的div中,以下是两个文件的代码。一切 看起来很好,但我没有得到任何结果。请帮忙。多谢各位 1.php <html> <head> <script type="text/javascript"> function makeRequestObject(){ var xmlhttp=false; try{ xmlhttp = n

我正在尝试学习ajax,下面是脚本,但它不会运行。它的 只需一个脚本即可接受2个用户输入,并在提交时显示它们 在ID为info的div中,以下是两个文件的代码。一切 看起来很好,但我没有得到任何结果。请帮忙。多谢各位

  • 1.php

    <html>
    <head>
    <script type="text/javascript">
    function makeRequestObject(){
    var xmlhttp=false;
    try{
        xmlhttp =  new ActiveXObject('Msxml2.XMLHTTP');
    }
    catch(e){
        try{
            xmlhttp= new ActiveXObject('Microsoft.XMLHTTP');                        
            } catch(E){
            xmlhttp = false;
            }               
    }
    if(!xmlhttp && typeof XMLHttpRequest!='undefined')
    {
        xmlhttp = new XMLHttpRequest();
    }
        return xmlhttp;                 
    }
    
    function showdata(){
    var xmlhttp = makeRequestObject();
    user=document.getElementById('user_name').value;
    email=document.getElementById('email_id').value;
    
    var file='2.php?username=';
    xmlhttp.open('GET',file+user+'&emailid='+email,true);
    
    xmlhttp.onreadystatechange=function(){
            if(xmlhttp.readyState==4 && xmlhttp.status==200){
                    var content = xmlhttp.responseText;
                    if(content){
                        document.getElementById('info').innerHTML=content;
                        }                   
                }           
        }
        xmlhttp.send();         
    }
    
    </script>
    </head>
    <body>
        <label>Name:</label><input type="text" name="user_name" /> <br/>
        <label>Email:</label><input type="text" name="email_id" /> <br/>
        <input type="button" onclick="showdata()" value="Submit" />
        <div id="info"></div>
    </body>
    </html>
    
    
    函数makeRequestObject(){
    var xmlhttp=false;
    试一试{
    xmlhttp=newActiveXObject('Msxml2.xmlhttp');
    }
    捕获(e){
    试一试{
    xmlhttp=newActiveXObject('Microsoft.xmlhttp');
    }捕获(E){
    xmlhttp=false;
    }               
    }
    如果(!xmlhttp&&typeof XMLHttpRequest!=“未定义”)
    {
    xmlhttp=新的XMLHttpRequest();
    }
    返回xmlhttp;
    }
    函数showdata(){
    var xmlhttp=makeRequestObject();
    user=document.getElementById('user_name')。值;
    email=document.getElementById('email_id')。值;
    var file='2.php?username=';
    open('GET',file+user+'&emailid='+email,true);
    xmlhttp.onreadystatechange=函数(){
    if(xmlhttp.readyState==4&&xmlhttp.status==200){
    var content=xmlhttp.responseText;
    如果(内容){
    document.getElementById('info').innerHTML=content;
    }                   
    }           
    }
    xmlhttp.send();
    }
    名称:
    电子邮件:
  • 2.php

    <?php 
    echo "Welcome ".$_GET['username']." to our Shopping Mall <br/>";
    echo "Your email id is ".$_GET['emailid'];
    ?>
    
    
    

按如下方式放置元素的id:

删除:

<label>Name:</label><input type="text" name="user_name" /> <br/>
<label>Email:</label><input type="text" name="email_id" /> <br/>
名称:
电子邮件:
加:

名称:
电子邮件:

Define
一切看起来都很好,但我没有得到任何结果
此外,我强烈建议使用jQuery或其他能够使用AJAX的现代库,除非你有很好的理由不这么做。你使用的是
getElementById
,并且没有在输入类型中提供任何
id
。我是ajax新手,正在使用一本书来学习它,javascript看起来还可以,但如果调用ActiveXObject有错误,我不知道。。基本上和我试过的代码是一样的。谢谢@Hamza,当我看到ajax是如何工作的时候,我会这么做。
<label>Name:</label><input type="text" name="user_name" id="user_name" /> <br/>
<label>Email:</label><input type="text" name="email_id" id="email_id" /> <br/>