JQUBAR1.1 简介
2010-11-22在博客园发布了柱状图JQUBar1.0 jQuery 插件。现将该插件升级为1.1版本。
1.1版本修复了部分bug,同时新增以下功能:
1.可自定义坐标颜色
2.可自定义X,Y轴坐标名称
3.Y轴动态坐标自动建立
4.Y轴动态坐标值自动计算
5.插件样式升级
JQUBAR1.1使用方法:
1.引入Javascript文件及CSS文件:
(在html<head></head>加入以下代码,以ASP.NET MVC 2.0 为例)
1 <script src="<%=Url.Content("~/Scripts/jquery-1.4.1.js")%>" type="text/javascript"
2 charset="utf-8"></script>
3 <script src="<%=Url.Content("~/Scripts/JQUBar/wz_jsgraphics.js")%>" type="text/javascript"></script>
4 <script src="<%=Url.Content("~/Scripts/JQUBar/jquery-ui.min.js")%>" type="text/javascript"></script>
5 <script src="<%=Url.Content("~/Scripts/JQUBar/Utility.js")%>" type="text/javascript"></script>
6 <script src="<%=Url.Content("~/Scripts/JQUBar/JQUBar.js")%>" type="text/javascript"></script>
7 <link href="<%=Url.Content("~/Scripts/JQUBar/JQUBar.css")%>" rel="stylesheet" type="text/css" />
2.在html<head></head>加入以下javascript代码:
1 <script type="text/javascript">
2 $(function () {
3 $("#con").jQUBar({
4 zoom: true,
5 drag: true,
6 url: '<%=Url.Action("LoadData") %>'
7 });
8
9 $("#btnReloadBar").click(function () {
10 $("#con").setBarParam({
11 //是否缩放
12 zoom: $("#cbZoom").attr("checked"),
13 //是否可拖拽
14 drag: $("#cbDragable").attr("checked"),
15 //X轴标题,默认为“X轴”
16 xAxis: "人员",
17 //Y轴标题,默认为“Y轴”
18 yAxis: "金额",
19 //坐标颜色,默认为“Black”
20 axisColor: "#0476BB",
21 //提供JSON数据,方便 .net、 java、 php 调用。本例在Asp.net MVC2.0下演示
22 url: '<%=Url.Action("LoadData") %>/?name=' + $("#txtName").val()
23 }).reload();
24 });
25 });
26 </script>
3.加入HTML代码:
1 <div id="con" style="position: relative">
2 <%--JQUBAR容器--%>
3 </div>
4 <input type="checkbox" id="cbZoom" checked="checked" />
5 <label for="cbZoom">
6 缩放</label>
7 <input type="checkbox" id="cbDragable" checked="checked" />
8 <label for="cbDragable">
9 拖拽</label>
10 <br />
11 姓名模糊查询:<input type="text" id="txtName" />
12 <br />
13 <input type="button" id="btnReloadBar" value="重新加载" />
4.MVC2.0 C#代码:
1 private NORTHWINDDataContext _Context = new NORTHWINDDataContext();
2 private decimal[] GetPricesByEmployeeId(int employeeId)
3 {
4 decimal[] result = null;
5 result = _Context.Orders.Where(o => o.EmployeeID == employeeId).Take(5)
6 .Select(oo => (decimal)oo.ShipVia).ToArray();
7 return result;
8 }
9
10 public JsonResult LoadData(string name)
11 {
12 var data = (from e in _Context.Employees.Take(10).ToList()
13 select new
14 {
15 EmployeeID = e.EmployeeID,
16 Orders = GetPricesByEmployeeId(e.EmployeeID),
17 Name = e.FirstName,
18 }).Distinct();
19
20 if (!string.IsNullOrEmpty(name))
21 {
22 data = data.Where(d => d.Name.IndexOf(name) >= 0);
23 }
24
25 return Json(new { Success = true, Msg = data }, JsonRequestBehavior.AllowGet);
26 }
程序截图
图1:
图2:
注意事项
显示JQUBAR插件页面的html标准请使用 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> ,MVC2.0 C#代码使用NORTHWIND数据库。JQUBar1.1插件在这里下载。
Enjoy !
作者:RyanDing
出处:http://www.cnblogs.com/ryanding/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如有疑问,可以通过 ryan.d@qq.com 联系作者本人。