js对ajax返回数组的处理介绍
程序员文章站
2023-11-07 17:33:04
引言:ajax异步传输,可以传输字符串,但是数组这样的数据,就不太好传递了,这个时候怎么办呢?
答案是可以通过json来处理,后台将数据数据进行json编码!
然后客户...
引言:
ajax异步传输,可以传输字符串,但是数组这样的数据,就不太好传递了,这个时候怎么办呢?
答案是可以通过json来处理,后台将数据数据进行json编码!
然后客户端,通过js来进行解析。
这样问题就解决了!json是一种很好的数据格式!
我做的是异步判断某堂课是否处于上课状态,会从后台接口中获取数组数据!共四堂课,
代码如下:
复制代码 代码如下:
function ajaxcheckedlessonsaction(){
//3583 语文 8班
//1500 语文 9班
//2717 物理 8班
//1612 物理 9班
$wherelessons = array();
$wherelessons['lessons.id in(?)'] = array(3583, 1500, 2717, 1612);
$daolessons = new dao_lessons();
$alllessons = $daolessons->getlessons($wherelessons);
//print_r($alllessons);exit;
$lessonschecked = array();
foreach ($alllessons as $lessons) {
if ($lessons['id'] == 3583) {
$lessonschecked['8yuwen'] = $this->verifycheckedlessons($lessons['startime'], $lessons['endtime']);
} elseif ($lessons['id'] == 1500) {
$lessonschecked['9yuwen'] = $this->verifycheckedlessons($lessons['startime'], $lessons['endtime']);
} elseif ($lessons['id'] == 2717) {
$lessonschecked['8wuli'] = $this->verifycheckedlessons($lessons['startime'], $lessons['endtime']);
} elseif ($lessons['id'] == 1612) {
$lessonschecked['9wuli'] = $this->verifycheckedlessons($lessons['startime'], $lessons['endtime']);
}
}
$json = json_encode($lessonschecked);
echo $json;
}
接口处理数据,将数据json化,
前台对json数据进行解析
复制代码 代码如下:
//进入页面就进行的处理
$.ajax({
type: "post",
url:"/default/index/ajaxcheckedlessons",
data:"",
success:function(response){
if(response){
var data = eval('('+response+')');
if(data['8yuwen']){
$("#8yuwen").attr("style","color:red;");
}else{
$("#8yuwen").attr("style","");
}
if(data['8wuli']){
$("#8wuli").attr("style","color:red;");
}else{
$("#8wuli").attr("style","");
}
if(data['9yuwen']){
$("#9yuwen").attr("style","color:red;");
}else{
$("#9yuwen").attr("style","");
}
if(data['9wuli']){
$("#9wuli").attr("style","color:red;");
}else{
$("#9wuli").attr("style","");
}
}else{
alert("error");
}
}
});
红色部分就是json的核心代码。
这样就完成了数组的处理!异步数组数据传递!
上一篇: 夏季小儿常见疾病高发 居家偏方帮你解决
下一篇: 香菜学名你知道多少