1.当dataType:"text"时,处理页面用的是DBDA类中的Strquery()方法,所以返回的数据是下面这样的,所以要对返回来的数据用split根据“|”和“^”来分割,保存到数组,例子见三级联动
2.当dataType:"json"时,处理页面使用DBDA类中的Guanquery()方法,所以返回的数据是下面这样的,json相当于关联数组,处理界面一般用Guanquery()
以填充民族表为例
显示页面代码
<script src="jquery-1.11.2.min.js"></script> //一定不要忘记引入 </head> <body> <select id="nation"> //造一个下来菜单,下面用jquery往里添加option </select> </body> </html> <script> $(document).ready(function(e) { $.ajax({ url:"jsonchuli.php", dataType:"json", success:function(data) { alert(data); var str =""; for(var i=0;i<data.length;i++) //使用for循环,遍历返回的数据,下面用data.code和data.name,因为处理页面是调用的关联数组 { str = str+"<option value='"+data[i].Code+"'>"+data[i].Name+"</option>"; } $("#nation").html(str); } }); }); </script>
处理界面
<?php include("DBDA.class.php"); $db=new DBDA(); $sql="select * from nation "; echo json_encode($db->GuanQuery($sql)); //用json_encode(),并且是调用返回关联数组的方法
3.当dataType:"xml"时
XML的特点:
1.必须要有一个根
2.标签名自定义
3.对大小写敏感
4.有开始就要有结束
5.同一级别下只能有一个标签名
<nation> <n1> <code>n001</code> <name>汉族</name> </n1> <n2> <code>n002</code> <name>回族</name> </n2> </nation>
显示页面
<select id="sel"> </select> <script type="text/javascript"> $.ajax({ url:"xmlchuli.php", dataType:"XML", success: function(data){ alert($(data).find("nation").attr("bs")); //这是通过找nation标签,取它的ts属性 var allcode = $(data).find("code"); //通过$(data).find();找到的是所有的code var allname = $(data).find("name"); //通过$(data).find();找到的是所有的name var str =""; for(var i=0;i<allcode.length;i++) { var code = allcode.eq(i).text(); //把allcode每一项遍历给code var name = allname.eq(i).text(); str = str +"<option value='"+code+"'>"+name+"</option>"; } $("#sel").html(str); } }); </script>
处理页面
<?php include("DBDA.class.php"); $db = new DBDA(); $sql = "select * from nation"; $attr = $db->Query($sql); echo "<nation bs='1'>"; //还可以给标签设置属性 foreach($attr as $k=>$v) { echo "<n{$k}><code>{$v[0]}</code><name>{$v[1]}</name></n{$k}>"; } echo "</nation>";