在JSP页面中声明数组与对象及解析Ajax返回的JSON数据
本文介绍如何在JSP页面的JavaScript中声明数组和对象,利用JSP标签进行数据赋值。同时详细讲解如何处理Ajax返回的JSON数据,包括使用eval函数解析对象和数组格式的数据,并遍历数组获取具体字段值。
在JSP中声明数组与对象
1、在JSP页面的JavaScript代码中,可以直接使用JSP标签。
例如,可以定义一个包含患者ID的对象:var patientInfoList={patientId:"${session.patientId}"};。同时,可以初始化一个医生科室列表数组和一个挂号类型映射数组:var docDepList=[],noTypeMap=["","普通号","主治医生号","副主任医师号","主任医师号"];。
通过JSP的<c:forEach>标签遍历${docDepList}集合,可以将每个医生的ID和科室名称赋值给docDepList数组的对应索引位置:docDepList[${idx.index}]={doctorId:"${list.doctorId}",departmentName:"${list.departmentName}"};。
docDepList是一个数组,在JavaScript赋值时,其元素可以是对象。
patientInfoList是一个对象。
解析Ajax返回的JSON数据
2、如果Ajax返回的数据格式如下:
代码如下:
{"birthday":"1977-07-08","contactInfoList":[],"gender":"男"},可以使用eval("("+data+")").birthday来获取birthday字段的值。
如果数据格式为[{"contactInfo_ID":0,"create_Time":""create_Time}],这相当于一个数组,可以使用eval("("+data+")")[0].create_Time来获取第一个元素的create_Time字段值。
如果数据格式为[{"contactInfo_ID":0,"create_Time":""create_Time},{"contactInfo_ID":0,"create_Time":""create_Time}],{"contactInfo_ID":0,"create_Time":""create_Time},{"contactInfo_ID":0,"create_Time":""create_Time}],这同样是一个数组。
var dataArr=eval("("+data+")");
for(var i=0;i<dataArr.length;i++){
alert(dataArr[i].create_Time);
}什么时候该用JS构造器:与工厂模式、字面量的选择对比
2026-11-05 16:18:22
推荐几款轻量级JS照片墙开源库及对比
2026-11-05 15:56:19
JavaScript递归写法有哪些常见陷阱及避免方法
2026-11-05 14:53:38
JS数组浅拷贝与深拷贝怎么选?场景与方法总结
2026-11-05 14:41:02
p5.js 中 setup() 和 draw() 函数的执行机制详解
2026-11-05 12:32:38
