关于echarts和ajax的简单运用
2017-09-25 09:02
274 查看
最近有一个很好的机会让我去公司摸鱼。~~
然后接触了echarts和ajax的运用
刚开始一直没想明白 后面慢慢开始了解起来。
通过springmvc框架下 在control类引入jacakson包对得到的泛型List转换为 json数据。传递给前台显示。
代码如下:
control类:@Controller
public class EchartsContorller {
@Autowired
private EchartsService echartsService;
@RequestMapping(value = "test",produces ="text/html; charset=utf-8")
public void echartsTest(HttpServletResponse Response, HttpServletRequest Request, Model model)throws Exception
{
List<EchartsEntity> list = echartsService.getEchartsAll();
List<EchartsEntity> list1 = new ArrayList<EchartsEntity>();
for(int i=0;i<list.size();i++)
{
list1.add(i,list.get(i));
}
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(list1);
Response.setCharacterEncoding("UTF-8");
Response.setContentType("text/html,charset=utf-8");
Response.getWriter().print(json);
}
}
前台JSP:
<script type="text/javascript">
var names=[];
var prices=[];
var timer= null;
function clearData()
{
if(names.length!=0)names=[];
if(prices.length!=0)prices=[];
}
$(document).ready(function () {
$("#test").click(function aa() {
clearInterval(timer);
timer=setInterval(function () {
clearData();
$.ajax(
{
type:"post",
async:true,
url:'test.do',
data:{},
dataType:"json",
scriptCharset:'utf-8',
success:function (result) {
if(result)
{
for (var i=0;i<result.length;i++)
{
names.push(result[i].testname);
prices.push(result[i].price);
}
mychart.hideLoading();
mychart.setOption({
xAxis:{
data:names
},
series:[{
data:prices
}]
});
}
}
}
)
},1000);
})
})
</script>
</head>
<body>
<div id="main" style="width:600px;height: 400px;"></div>
<script type="text/javascript">
var mychart = echarts.init(document.getElementById('main'));
var option = {
title:{
text:'Echart入门'
},
tooltip:{
trigger:'axis'
},
toolbox:
{
show:true,
feature:{
dataZoom:{
yAxisIndex:'none'
},
dataView:{readOnly:false},
magicType:{
type:['line','bar']
},
restore:{},
saveAsImage:{}
},
},
legend:{
data:['销量']
},
xAxis:{
type:'category',
data:[]
},
yAxis:{},
series:[
{
name:'价格',
type:'line',
data:[],
markPoint: {
symbol:'pin',
symbolSize:80
},
}
]
};
mychart.clear();
mychart.setOption(option);
mychart.showLoading();
</script>
展示结果:
然后接触了echarts和ajax的运用
刚开始一直没想明白 后面慢慢开始了解起来。
通过springmvc框架下 在control类引入jacakson包对得到的泛型List转换为 json数据。传递给前台显示。
代码如下:
control类:@Controller
public class EchartsContorller {
@Autowired
private EchartsService echartsService;
@RequestMapping(value = "test",produces ="text/html; charset=utf-8")
public void echartsTest(HttpServletResponse Response, HttpServletRequest Request, Model model)throws Exception
{
List<EchartsEntity> list = echartsService.getEchartsAll();
List<EchartsEntity> list1 = new ArrayList<EchartsEntity>();
for(int i=0;i<list.size();i++)
{
list1.add(i,list.get(i));
}
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(list1);
Response.setCharacterEncoding("UTF-8");
Response.setContentType("text/html,charset=utf-8");
Response.getWriter().print(json);
}
}
前台JSP:
<script type="text/javascript">
var names=[];
var prices=[];
var timer= null;
function clearData()
{
if(names.length!=0)names=[];
if(prices.length!=0)prices=[];
}
$(document).ready(function () {
$("#test").click(function aa() {
clearInterval(timer);
timer=setInterval(function () {
clearData();
$.ajax(
{
type:"post",
async:true,
url:'test.do',
data:{},
dataType:"json",
scriptCharset:'utf-8',
success:function (result) {
if(result)
{
for (var i=0;i<result.length;i++)
{
names.push(result[i].testname);
prices.push(result[i].price);
}
mychart.hideLoading();
mychart.setOption({
xAxis:{
data:names
},
series:[{
data:prices
}]
});
}
}
}
)
},1000);
})
})
</script>
</head>
<body>
<div id="main" style="width:600px;height: 400px;"></div>
<script type="text/javascript">
var mychart = echarts.init(document.getElementById('main'));
var option = {
title:{
text:'Echart入门'
},
tooltip:{
trigger:'axis'
},
toolbox:
{
show:true,
feature:{
dataZoom:{
yAxisIndex:'none'
},
dataView:{readOnly:false},
magicType:{
type:['line','bar']
},
restore:{},
saveAsImage:{}
},
},
legend:{
data:['销量']
},
xAxis:{
type:'category',
data:[]
},
yAxis:{},
series:[
{
name:'价格',
type:'line',
data:[],
markPoint: {
symbol:'pin',
symbolSize:80
},
}
]
};
mychart.clear();
mychart.setOption(option);
mychart.showLoading();
</script>
展示结果:
相关文章推荐
- JSON 在Ajax数据交换中的简单运用
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- 1.简单实例:ASP.NET下Echarts通过Ajax从数据库中获取数据
- 关于Ajax的操作简单总结:
- 关于:读写xls文件,提供下载的一个小例子(jxl 的简单运用) - 创建文件
- Android 关于 ContentResolver 内容解析者的简单运用
- 【转载】关于:读写xls文件,提供下载的一个小例子(jxl 的简单运用) - 读取文件
- 关于 Protocol Buffer 的简单运用
- ckeditor 自己写的一个简单的image上传js 运用iframe的ajax上传
- android中关于sqlite的简单运用
- JSON 在Ajax数据交换中的简单运用
- 关于:读写xls文件,提供下载的一个小例子(jxl 的简单运用) - 读取文件
- 在jsp中运用ajax(简单入门)
- 【转载】关于:读写xls文件,提供下载的一个小例子(jxl 的简单运用) - 高级操作
- Domino中运用ajax判断帐号是否存在的简单例子
- 关于简单控件的运用
- 关于thinkphp钩子在onethink中的简单运用
- 关于:读写xls文件,提供下载的一个小例子(jxl 的简单运用) - 高级操作
- Json Ajax 在Mvc中的简单运用
- 关于ajax的简单实例化