ajax异步获取请求,获得json数组后对数组的遍历
如果响应数据是以html的形式发出来的,即
response.setContentType("text/html;charset=utf-8");
那么一般用下面这种方式,但是要注意用eval()函数将responseText转换成一个json表达式,如下标红代码
//创建回调函数,根据相应状态动态更新页面
var xhr = getXMLHttpRequest(); //创建XMLHttpRequest对象 //通过实践调用回调函数处理相应结果
xhr.onreadystatechange = function(){ if(xhr.readyState == ){
if(xhr.status == ){
var str = xhr.responseText; //将str强制转换成一个表达式
12 str = eval(xhr.responseText);
for(var i = ; i < str.length; i++){
var option = "<option>"+str[i].name+"</option>";
$("#select").append(option);
}
}
}
} //与服务器建立连接
xhr.open("get", "${pageContext.request.contextPath}/provinceServlet"); //发送请求
xhr.send(null);
当然,这里获取到json表达式,后可以jquey方式遍历,如下标红代码
//创建回调函数,根据相应状态动态更新页面
var xhr = getXMLHttpRequest(); //创建XMLHttpRequest对象 //通过实践调用回调函数处理相应结果
xhr.onreadystatechange = function(){ if(xhr.readyState == ){
if(xhr.status == ){
var str = xhr.responseText;
//将str强制转换成一个表达式
str = eval(xhr.responseText); $(str).each(function(){
14 var option = "<option>"+this.name+"</option>";
15 $("#select").append(option);
16 });
}
}
} //与服务器建立连接
xhr.open("get", "${pageContext.request.contextPath}/provinceServlet"); //发送请求
xhr.send(null);
如果后台响应的是以application/json方式发出的,即
response.setContentType("application/json;charset=utf-8")
那么运用jquery可以进一步简化代码,代码如下:
$.get("provinceServlet", {}, function(data){
$(data).each(function(){
var option = "<option>"+this.name+"</option>" ;
$("#select").append(option);
});
});
顺便提一句:
将普通对象封装成json的方法是JSONOject.fromObject(obj).toString();
如果是将list对象封装成json,那么方法是JSONArray.fromObject(list).toString();
ajax异步获取请求,获得json数组后对数组的遍历的更多相关文章
- ajax异步获取数据后动态向表格中添加数据(行)
因为某些原因,项目中突然需要做自己做个ajax异步获取数据后动态向表格中添加数据的页面,网上找了半天都没有 看到现成的,决定自己写个例子 1.HTML页面 <!doctype html> ...
- jquery.ajax异步发送请求的简单测试
使用ajax异步发送请求到一般处理程序,判断输入的用户名和密码 1.添加Html页面,导入jquery 2.编写js代码和页面标签 <script type="text/javascr ...
- 异步POST请求解析JSON
异步POST请求解析JSON 一.创建URL NSURL *url = [NSURL URLWithString:@"http://localhost:8080/MJServer/order ...
- dedecms Ajax异步获取文章列表
dedecms如何通过ajax(异步)动态获取文章列表数据. 第一步添加:服务端(PHP)代码 打开plus目录下面的list.php文件,在12行代码下面添加以下代码: if(isset($_GET ...
- ajax和axios请求本地json数据对比
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进 ...
- treeTable的使用(ajax异步获取数据,动态渲染treeTable)
一.展示效果(treetable基本样式https://www.cnblogs.com/shuihanxiao/p/10413454.html) 二.html文件(若一个页面又多个treetable, ...
- Ajax - 异步调用后台程序 -JSON
在ASP.NET使用ajax时基本上每个操作都要新建一个.ashx处理程序,页面很多,每个页面的操作也很多,这样的话项目就会产生新建很多很多的.ashx页面,能不能把方法写在后台中,然后Jquery直 ...
- Ajax异步获取html数据中包含js方法无效的解决方法
页面上使用js写了一个获取后台数据的方法 function data() { var tab = $("#dic") $.ajax({ url: '../demo.ashx?met ...
- 通过Ajax——异步获取相关问题解答
问题呈现: 解决方案: dataType定义的是接收的值的类型,及controller控制器返回什么类型的值,这就写成什么类型, 我写的是return content("...") ...
随机推荐
- gulp常用插件之gulp-filter使用
更多gulp常用插件使用请访问:gulp常用插件汇总 gulp-filter这是一款可以把stream里的文件根据一定的规则进行筛选过滤. 更多使用文档请点击访问gulp-filter工具官网. 安装 ...
- Luogu2345 | 奶牛集会 (树状数组)
题目背景 MooFest, 2004 Open 题目描述 约翰的 \(N\) 头奶牛每年都会参加"哞哞大会".哞哞大会是奶牛界的盛事.集会上的活动很多,比如堆干草,跨栅栏,摸牛仔的 ...
- PAT (Basic Level) Practice (中文)1047 编程团体赛 (20 分)
编程团体赛的规则为:每个参赛队由若干队员组成:所有队员独立比赛:参赛队的成绩为所有队员的成绩和:成绩最高的队获胜. 现给定所有队员的比赛成绩,请你编写程序找出冠军队. 输入格式: 输入第一行给出一个正 ...
- Codeforces Round #624 (Div. 3) F. Moving Points 题解
第一次写博客 ,请多指教! 翻了翻前面的题解发现都是用树状数组来做,这里更新一个 线段树+离散化的做法: 其实这道题是没有必要用线段树的,树状数组就能够解决.但是个人感觉把线段树用熟了会比树状数组更有 ...
- CMS系统
CMS是Content Management System的缩写,意为"内容管理系统" 对于内容管理,业界还没有一个统一的定义,不同的机构有不同的理解: 内容管理系统是企业信息化建 ...
- python里的复数complex
复数是一个数学概念,包含了实部和虚部.在python设计语言中,可以直接定义以j为单位,也可以使用complex函数创建复数,这个函数可以传实部和虚部,也可以只传实部. 我们把形如z=a+bj(a,b ...
- 小白的java学习之路 “ 字符串”
定一个字符串可以使用string类和stringbuffer类. string类提供了大量的操作字符串的方法,常用的如下: 获得字符串的长度: length(). 比较字符串:equals(). 链接 ...
- 聊聊c#字符串拼接
字符串对我编程人员来说是字符串时每天见面的常客,你不认识不熟悉他都不得行,字符串的拼接更是家常便饭,那么在实际开发过程中实现字符串的拼接有哪一些方式呢?咱们一起来聊聊,来交流沟通,学习一波.也许你会说 ...
- WPF 不支持从调度程序线程以外的线程对其 SourceCollection 进行的更改
该问题出现在WPF中的VM类中,ObservableCollection类型,该类型的 CollectionView 不支持从调度程序线程以外的线程对其 SourceCollection 进行的更改, ...
- 如何成为一名AI工程师
如何成为一名AI工程师 step 前端:js,html,找准方向开始累积知识! 计算机/数学专业 python anaconda IDE pycharm/jupyter 熟悉基础语法,了解数据结构 刷 ...