Highcharts使用=====通过指定日期显示曲线
1、说明:
利用HighStock显示曲线,在右上角的日期间隔选择好日期后,重新请求后台数据,重新加载曲线。
2、实现方法:
在HighStock的rangeSelector中有一个属性inputDateParser,在这里面可以定义一个回调函数,当输入完日期后,会调用这个函数。
3、日期的取得:
右键查看元素可知,开始日期的input有name=‘min’属性,结束日期input有name='max'属性。这样只需要获得value只就可以了。
4、代码:
在回调函数中会用到,自己调用自己,因此定义了func()函数,以便在回调函数中使用。本例在回调函数中只是模拟,原理是一样的,只要把ajax发送的数据改为min、max就可以了。在后台,接收日期查询数据返回数据。
$(function () {
$.getJSON("/handler1.ashx", function func(dt) {
var data=[];
Highcharts.setOptions({
global: {
useUTC:false
} });
for (var i = 0; i < dt.length; i++) {
data.push([Date.parse(dt[i]["Time"]), Number(dt[i]["Value"])]);
}
$('#highstock').highcharts('StockChart', { credits: {
enabled:false
}, navigator: {
enabled: $(window).width() > 640
}, rangeSelector: {
selected: 1,
inputDateFormat: '%Y-%m-%d',
enabled: true,
inputDateParser:function () {
$.ajax({ //实现点击日期框 再次选择数据
url: '/handler1.ashx',
dataType: 'json',
data:'min=45',
success:function(ds) {
func(ds);
}
}); }
}, series: [{
name: '持仓量',
data: data,
tooltip: {
valueDecimals: 2
}
}],
tooltip: {
formatter: function () {
var tip = "";
tip += Highcharts.dateFormat("%Y年%m月%d日", this.points[0].point.x, false) + "<br/>";
tip += "净持仓:" + this.points[0].point.y.toFixed(2) + "吨<br/>";
return tip; }
},
yAxis: { gridLineColor: '#ccc', labels: {
formatter: function () {
return this.value + "吨";
}
}
}
});
}); });
后台代码:接收到“45”说明是,点击日期选择框了,返回前2条数据。实际使用中,接收min、max日期,拼where条件查询数据返回。
string min = context.Request["min"]??"";
string sql;
if (min=="")
{
sql = "select top(2)Time,Value from TableTest order by Time";
}
else
{
sql= "select Time,Value from TableTest order by Time";
} DataTable dt=SqlDbHelper.ExecuteDataTable(sql); context.Response.Write(JsonConvert.SerializeObject(dt));
Highcharts使用=====通过指定日期显示曲线的更多相关文章
- 同一天的时间差,显示为HHMMSS和指定日期时间部分
//1.hhmmss private String setGoodsDisBalance(Date startTime,Date endTime){ //时间差:毫秒ms long diff = en ...
- 使用DateAdd方法向指定日期添加一段时间间隔,使用TimeSpan对象获取时间间隔
一:使用DateAdd方法向指定日期添加一段时间间隔,截图 二:代码 using System; using System.Collections.Generic; using System.Comp ...
- repo回退当前分支下所有仓库到指定日期前的最新代码版本【转】
本文转载自:https://blog.csdn.net/u011006622/article/details/70272087 执行下面这样的repo命令就行了: repo forall -c 'c ...
- springboot定时任务,去掉指定日期
今天用springboot写到一个需求:每周定时发送任务,但是要避开法定节假日. 网上找了些博客看,主要参考了https://www.cnblogs.com/lic309/p/4089633.html ...
- repo 回退当前分支下所有仓库到指定日期前的最新代码版本
回退命令: repo forall -c 'commitID=git log --before "2019-11-24 23:59" -1 --pretty=format:&quo ...
- day81:luffy:课程分类页面&课程信息页面&指定分类显示课程信息&分页显示课程信息
目录 1.构建课程前端初始页面 2.course后端的准备工作 3.后端实现课程分类列表接口 4.前端发送请求-获取课程分类信息 5.后端实现课程列表信息的接口 6.前端显示列表课程信息 7.按照指定 ...
- 断今天日期和指定日期相等和两者的时间差为两年的sql
1. ---判断今天日期和指定日期相等 update store set Status =1 where CONVERT(varchar(12) ,opendate, 105 )= CONVERT ...
- iOS不得姐项目--精华模块上拉下拉的注意事项,日期显示,重构子控制器,计算cell的高度(只计算一次),图片帖子的显示
一.上拉下拉注意事项 使用MJRefresh中的上拉控件自动设置透明 当请求下页数据通过page的时候,注意的是上拉加载更多数据失败的问题,下拉加载数据失败了,页数应该还原.或者是请求成功的时候再将页 ...
- JS 比较日期相隔都少天&& 比较两个日期大小&&指定日期往前后推指定天数
//这些天常接触到有关于js操作日期事 就小结了一下,希望对你有帮助 function conversionDate(a,b){ var start =a.split('-'); var end = ...
随机推荐
- php实现冒泡排序
冒泡排序是非常容易理解和实现,,以从小到大排序举例:设数组长度为N.1.比较相邻的前后二个数据,如果前面数据大于后面的数据,就将二个数据交换.2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最 ...
- V9 二次开发技术篇之 模型数据库
应V9粉丝的建议,本人今天讲一下 MVC中的M 数据库模型 首先 在 phpcms\model 建一个模型文件test_model.class.php <?phpdefined('IN_PHP ...
- AudioServicesPlaySystemSound音频服务—b
对于简单的.无混音音频,AVAudio ToolBox框架提供了一个简单的C语言风格的音频服务.你可以使用AudioservicesPlaySystemSound函数来播放简单的声音.要遵守以下几个规 ...
- Android 自定义View 画圆 画线
自定义一个DrawCircle继承View 实现构造方法: public DrawCircle(Context context) { super(context); this.mContext = c ...
- 转:窗口启用/禁用功能函数EnableWindow的使用
在非MFC环境中如何使控件或者窗口禁用呢?起初是想通过发送消息来实现,但找来找去都木有找到控件禁用的消息(也是是博主木有找到的缘故),所以只能另辟蹊径,使用 EnableWindow这个函数, 该函数 ...
- 检测客户端显示器分辨率、浏览器类型和客户端IP
原文:检测客户端显示器分辨率.浏览器类型和客户端IP 下面的代码实现了检测客户端显示器分辨率.浏览器类型和客户端IP的功能.你可以把客户端信息保存到Session,ViewState等中以便在其它的页 ...
- git “bad index file sha1 signature fatal: index file corrupt”错误
在执行commit或revert等操作时,提示“bad index file sha1 signature fatal: index file corrupt”错误,导致操作失败.这是由于git的in ...
- BZOJ3401: [Usaco2009 Mar]Look Up 仰望
3401: [Usaco2009 Mar]Look Up 仰望 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 87 Solved: 58[Submit ...
- 源代码管理(Windows + VisualSVN Server + TortoiseSVN + VS2010)
之前项目中使用过SVN管理源代码,但是都是链接别人搭建的服务器,现在感觉每周保留一个版本蛮麻烦的,就搭建一个,方便以后管理代码. 1.安装VisualSVN Server( VisualSVN Ser ...
- jsp中pageEncoding、charset=UTF -8
jsp中pageEncoding.charset=UTF -8" 在JSP/Servlet 中主要有以下几个地方可以设置编码,pageEncoding="UTF-8". ...