这个问题不是三两句就能说清楚的啊
给你AJAX省市联动的例子,应该和那很类似的//根据浏览器的不同创建AJAX对象
function createAjax()
{
var _xmlhttp;
try
{
_xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
try
{
_xmlhttp=new XMLHttpRequest();
}
catch(e)
{
_xmlhttp=false;
}
}
return _xmlhttp;
}//省市联动
function setcity()
{
var proname = $("stu_pro").value;
var url="adminajax.asp?menu=setcity&proid="+proname;

//$("myhint").style.display='';
var ajax=createAjax();
ajax.open("GET",url,true);
ajax.onreadystatechange=function()
{

if(ajax.readyState==4)
{

if(ajax.status==200)
{

//alert(ajax.responseText);
var labels=ajax.responseText.split("|");
$("stu_city").options.length=0;
for(var ii=0;ii<labels.length;ii++)
{
var nn = labels[ii].split("*");
$("stu_city").add(document.createElement("OPTION"));
$("stu_city").options[ii].text=nn[1];
$("stu_city").options[ii].value=nn[0];
}
$("stu_city").selectedIndex = 0; 
//$("myhint").style.display='none';
}
else
{
alert(ajax.status);
}
}
}

ajax.send(null);
}

解决方案 »

  1.   

    我不知道AJAX如何得到值然后从库里取记录
      

  2.   

    http://remysharp.com/wp-content/uploads/2007/01/select.html
      

  3.   

    发送Ajax请求和接收知道吗???知道,就可以像平时操作数据库那样,执行query,处理fetch,然后echo,就可以了。
      

  4.   

    a.html<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>无标题文档</title>
    <script type="text/javascript">
    function $(id)
    {
        return document.getElementById(id);
    }
    function $s(id)
    {
    return $(id).options[$(id).selectedIndex].value;
    }
    function addOption(ArrayName,id)
    {
    $(id).options.length = 0;//
    for(var i=0;i<ArrayName.length;i++)
    $(id).options[i] = new Option(ArrayName[i],ArrayName[i]);
    }
    function xmlHttp()
    {
        xmlhttp = false;
        xmlhttpObj = ["MSXML2.XmlHttp.5.0","MSXML2.XmlHttp.4.0","MSXML2.XmlHttp.3.0","MSXML2.XmlHttp","Microsoft.XmlHttp"];
        
        if(window.XMLHttpRequest)
       {
            xmlhttp = new XMLHttpRequest();
        }
        else if(window.ActiveXObject)
        {
            for(i=0;i<xmlhttpObj.length;i++)    
            {
                xmlhttp = new ActiveXObject(xmlhttpObj[i]);
                if(xmlhttp)
               {
                    break;    
                }
            }
        }
        else
       {
            alert("暂时不能创建XMLHttpRequest对象");
        }
        return xmlhttp?xmlhttp:false;
    }function getProvince(userid,act,id)
    {

    xmlhttp = xmlHttp();
    var uid =$s(userid);
       if(uid!="")
       {
            xmlhttp.onreadystatechange = function (){
            if(xmlhttp.readyState ==4)
            {
                if(xmlhttp.status == 200)
                {
                    var txt = eval(xmlhttp.responseText);
    //alert(xmlhttp.responseText);
                    addOption(txt,id);
                }
            }
            };
            xmlhttp.open("post","a.php",true);
            xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;chartset=utf-8');
            xmlhttp.send('uid='+uid+'&act='+act);
        }
        else
        {
           alert("请选择一个项目经理");
        }}
    </script>
    </head><body>
    <select name="userID"  id="province_select" onchange="getProvince('province_select','province','tradeProvince')" > 
        <option  value="0">---请选择项目经理--- </option> 
                <option  value="1">张三 </option> 
                <option  value="2">李四 </option> 
    </select> <!--
    以下是项目经理的客户所在省份,当先张三时,OPTION就动态列出张三的相关客户(从库里取的),
    同理,选李四,就列出李四的所有客户所在省份,然后,供客户端选择 
    -->
    <select name="tradeProvince" id="tradeProvince" onchange="getProvince('tradeProvince','customer','tradeID')" > 
     </select> 
    <!--
    //当选完省份,就会列出本省的客户单位 
    -->
    <select  name="tradeID" id="tradeID"> 
            <option value="0">北京客户名称一 </option> 
            <option value="1">北京客户名称二 </option>  
    </select> </body>
    </html>
    a.php
    <?
    if($_POST['uid']!=""&&$_POST['act']=='province')
    {
    $uid = $_POST['uid'];
    //根据uid取这些uid的省份,取到后存成以下格式
    $str = "['北京','上海','武汉','开封']";
    $str = iconv('gb2312','utf-8',$str);
    echo $str;
    }
    elseif($_POST['uid']!=""&&$_POST['act']=='customer')
    {
    //根据省份得到客户
    $province = iconv('gb2312','utf-8',$_POST['uid']);
    $str = "['客户1','客户2','客户3','客户4']";
    $str = iconv('gb2312','utf-8',$str);
    echo $str;
    }
    ?>
      

  5.   


    <?
    if($_POST['uid']!=""&&$_POST['act']=='province')
    {
        $uid = $_POST['uid'];//这个就是选择的客户Id
        //根据uid取这些uid的省份,取到后存成以下格式
        $str = "['北京','上海','武汉','开封']";
        $str = iconv('gb2312','utf-8',$str);
        echo $str;
    }
    elseif($_POST['uid']!=""&&$_POST['act']=='customer')
    {
        //根据省份得到客户
        $province = iconv('gb2312','utf-8',$_POST['uid']);//这里就是省份,根据这个你可以在数据库里找这个省的相关信息
        $str = "['客户1','客户2','客户3','客户4']";
        $str = iconv('gb2312','utf-8',$str);
        echo $str;
    }
    ?>
      

  6.   

    AJAX程序在HTML文件里写的,而它发送值是到另一个PHP文件里(是以POST方式传的 ),我想看PHP文件里这个值是否传过去,怎么看?我在HTML文件里ALERT查看传的值时,值是对的 因为我在HTML里ALERTP查看PHP传回来的值是空的,所以我很想知道PHP那边是否传过去了,这个怎么查看PHP文件呀?
      

  7.   

    查看apache/log/access.log日志,看看有没有访问.
      

  8.   

    传的一个变量值是汉字,就总提示未定义,要是数字就不提示 
    在JS里也已经定义了:     
    var xmid=$s(user);//这是个数字,这个传就没问题
    var uid =$s(userid);//这是个汉字 传回来就不正确,提示'未定义'
    //这是那个PHP页面显示
    $province = iconv('utf-8','gb2312',$_POST['uid']);
    echo $province;