ajax 的返回值类型
jquery封装的ajax对象的dataType类型有三种:text,json,xml。
选择json和xml类型时时,该方法会把返回的字符串转化为相应的对象,无论是json还是xml,返回值实际上全是字符串
text类型:
主页面:
$.ajax({
url:"chuli.php",
dataType:"TEXT",
success: function(data){
var hang = data.split("|");
var str = "";
for(var i=0;i<hang.length;i++)
{
var lie = hang[i].split("^");
str = str+"<tr><td>"+lie[0]+"</td><td>"+lie[1]+"</td><td><span class='sc' bs='"+lie[0]+"'>删除</span><span class='xq' bs='"+lie[0]+"'>查看详情</span></td></tr>";
} } });
处理页面:
include("../DBDA.class.php");
$db = new DBDA();
$sql = "select * from nation";
echo $db->StrQuery($sql);
json类型:
主页面:
$.ajax({
url:"jsonchuli.php",
dataType:"JSON",
success: function(data){
var str ="";
/*for(var i=0;i<data.length;i++)
{
str = str+"<option value='"+data[i].Code+"'>"+data[i].Name+"</option>";
}*/
for(var s in data)
{
str = str+"<option value='"+data[s].Code+"'>"+data[s].Name+"</option>";
}
$("#nation").html(str);
}
});
处理页面:
include("DBDA.class.php");
$db = new DBDA();
$sql = "select * from nation";
//需要关联数组
//数组内容的编码格式:utf8的
echo json_encode($db->GuanQuery($sql));
xml类型:
XML:可扩展标记语言
HTML:超文本标记语言
标签:<标签名></标签名>
特点:
1.必须要有一个根
2.标签名自定义
3.对大小写敏感
4.有开始就要有结束
5.同一级别下只能有一个标签名
<nation>
<n1>
<code>n001</code>
<name>汉族</name>
</n1>
<n2>
<code>n002</code>
<name>回族</name>
</n2>
</nation>
主页面:
$.ajax({
url:"xmlchuli.php",
dataType:"XML",
success: function(data){
//alert($(data).find("code").eq(1).text());
alert($(data).find("nation").attr("bs"));
var allcode = $(data).find("code");
var allname = $(data).find("name");
var str ="";
for(var i=0;i<allcode.length;i++)
{
var code = allcode.eq(i).text();
var name = allname.eq(i).text();
str = str +"<option value='"+code+"'>"+name+"</option>";
}
$("#sel").html(str);
}
});
处理页面:
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>";