当前位置: 首页 > news >正文

Servlet获取ajax数组

首先使用setInterval()函数每隔10秒调用函数,以改动“最新价格”,原数据如下:

1、ajax发送请求,并发送数组数据:  

var url="test/goldPriceProcess.action";
var data="city=ld&city=tw&city=dj";  //json数组
myXmlHttpRequest.open("post",url,true);
myXmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
myXmlHttpRequest.onreadystatechange=manage;
myXmlHttpRequest.send(data);

2、Servlet接收数据,处理后返回json数组数据:

String[] cities = request.getParameterValues("city");  
PrintWriter out = response.getWriter();
StringBuilder sb = new StringBuilder();
sb.append("["); 
Random ran = new Random();
for(int i=0; i<cities.length; i++){
    if(i==cities.length-1){
        sb.append("{\""+cities[i]+"\":"+(ran.nextInt(1000)+500)+"}]");
    }else{
        sb.append("{\""+cities[i]+"\":"+(ran.nextInt(1000)+500)+"},");
    }
}
out.println(sb.toString());    //如[{"ld":1459},{"tw":1392},{"dj":864}]  

3、ajax处理返回的数据:

function manage(){
        if(myXmlHttpRequest.readyState==4 && myXmlHttpRequest.status==200){
            //得到json对象
            var res_obj=eval("("+myXmlHttpRequest.responseText+")");
            for(var i in res_obj){
                var res=res_obj[i];
                for(var key in res){
                    $(key).innerText=res[key];   //替换“最新价格”
                }
            }
        }
    }

最终效果如下:

table的内容如下:

<table border=1 >
    <tr><td>市场</td><td>最新价格$</td><td>价格涨跌</td></tr>
    <tr><td>伦敦</td><td id="ld">788.7</td><td><img src="/pic/down.jpg" />211.3</td></tr>
    <tr><td>台湾</td><td id="tw">854.0</td><td><img src="/pic/down.jpg" />146.0</td></tr>
    <tr><td>东京</td><td id="dj">1791.0</td><td><img src="/pic/up.jpg" />791.0</td></tr>
</table>

转载于:https://www.cnblogs.com/don1911/p/7697414.html

相关文章:

  • 小程序测试方案初探
  • 注册界面
  • PDF 补丁丁 0.6.0.3288 版发布(修复“合并文件”功能的文件夹文件排序问题)
  • Python常用的软件包
  • 2017-2018-1 20155229 《信息安全系统设计基础》第五周学习总结
  • 项目管理碎碎念系列之一:干系人管理
  • java动态数组
  • Windows Server 2008服务器系统的远程桌面连接数量
  • 如何辨别护照的种类
  • 如何一步一步提高图像分类准确率?
  • 这样做,导出Xmanager会话文件不是难事!
  • 看完九篇字体系列的文章,你还觉得我是在说字体?
  • BZOJ-3732: Network (kruskal+LCA)
  • 网络基础(持续更新)
  • Linux运维之道之admin1.1(命令行基础,目录和文件管理)
  • 【翻译】babel对TC39装饰器草案的实现
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • ➹使用webpack配置多页面应用(MPA)
  • Android组件 - 收藏集 - 掘金
  • docker-consul
  • GraphQL学习过程应该是这样的
  • Linux后台研发超实用命令总结
  • React+TypeScript入门
  • SQLServer之创建显式事务
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • vue脚手架vue-cli
  • vue--为什么data属性必须是一个函数
  • 开放才能进步!Angular和Wijmo一起走过的日子
  • 理解IaaS, PaaS, SaaS等云模型 (Cloud Models)
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 聊聊redis的数据结构的应用
  • 聊一聊前端的监控
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 如何打造100亿SDK累计覆盖量的大数据系统
  • 线上 python http server profile 实践
  • 新书推荐|Windows黑客编程技术详解
  • elasticsearch-head插件安装
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • # 计算机视觉入门
  • #define用法
  • #快捷键# 大学四年我常用的软件快捷键大全,教你成为电脑高手!!
  • (11)工业界推荐系统-小红书推荐场景及内部实践【粗排三塔模型】
  • (16)UiBot:智能化软件机器人(以头歌抓取课程数据为例)
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (ZT)薛涌:谈贫说富
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (十五)使用Nexus创建Maven私服
  • (一)kafka实战——kafka源码编译启动
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .net core Swagger 过滤部分Api
  • .NET/C# 中你可以在代码中写多个 Main 函数,然后按需要随时切换