图表JS:在工具提示模板中使用函数
Chart JS: Use function in tooltip template
我有一系列表示货币的数据,我需要工具提示来显示数据系列并格式化数据。我有一个工作函数,将"123456.78"转换为"123,456.78",但我不能在工具提示中应用它。我的代码如下:
function formatMoney(n, c, d, t){
var c = isNaN(c = Math.abs(c)) ? 2 : c,
d = d == undefined ? "." : d,
t = t == undefined ? "," : t,
s = n < 0 ? "-" : "",
i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "",
j = (j = i.length) > 3 ? j % 3 : 0;
return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/('d{3})(?='d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
};
var lineChartData = {
labels : ['January', 'Ferbruary', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
datasets : [
{
label: "Value",
fillColor : "rgba(32,78,158,0.2)",
strokeColor : "rgba(32,78,158,1)",
pointColor : "rgba(32,78,158,1)",
pointStrokeColor : "#fff",
pointHighlightFill : "#fff",
pointHighlightStroke : "rgba(32,78,158,1)",
data : ['20000','22000','35000','17000','18000','47500','20000','22000','35000','17000','18000','47500']
},{
label: "Budget",
fillColor: "rgba(47,116,234,0.3)",
strokeColor: "rgba(47,116,234,1)",
pointColor: "rgba(47,116,234,1)",
pointStrokeColor: "#fff",
pointHighlightFill: "#fff",
pointHighlightStroke: "rgba(47,116,234,1)",
data : ['10000','20000','30000','7000','17000','40500','19000','20000','33000','12000','17500','40500']
},
]
}
var ctx = document.getElementById("money-graph").getContext("2d");
window.myLine = new Chart(ctx).Line(lineChartData, {
responsive: true,
maintainAspectRatio: true,
multiTooltipTemplate: "<%= datasetLabel %> £<%= formatMoney(value,2) %>"
});
我在控制台得到的错误是ReferenceError: Can't find variable: formatMoney
我还尝试将函数定义为var formatMoney = function(n, c, d, t)
我正在做这个答案,以便将来更容易找到参考。问题是模板引擎不能处理函数,或者类似的问题。但是使用另一种模板方式似乎可以工作:
multiTooltipTemplate: function(chartData){
return chartData.label+" : " + formatMoney(chartData.value, 2);
}
相关文章:
- 为什么我的控制器没有启动函数.js脚本
- 在函数js中传递变量
- 如何在单独的文件中调用函数 js.
- 在铯中调用函数.js当事件被尝试时
- 只有setTimeout执行函数.JS
- 为什么图像选择器程序中的这个函数 js 不起作用
- 获取邮件中的信息.php从函数.js解析为manage.html
- 如何从应用程序中调用JS函数.js在Rails4视图中
- Uncatch TypeError: obj.attr 不是函数 JS
- 从 C++ 节点调用 JavaScript 函数.js扩展
- 调用 Backbone 内部的外部函数.js的视图初始化方法
- 如何使用 Scala 创建 JavaScript 函数.js
- 使用带有下划线循环的回调函数.js骨干.js项目不起作用
- 获取字段值的函数-JS
- 函数js不能递归调用自己的函数
- 在函数JS中创建带有地理代码的标记
- 循环内部的函数(js/jquery)
- 我需要帮助将此代码添加到jQuery函数.js文件中
- 未捕获类型:未定义不是函数JS错误
- 停止多个内联函数JS的事件传播