javascript - 在元素 onclick 上更改 Javascript Var
问题描述
全部,
我正在尝试更改一个 Javascript var,该 var 用于根据单击元素在图表上填充数据,但似乎无法使其正常工作。任何人都可以帮忙吗?
我有下面的变量,每当我单击 html 元素时,我想在图表上使用下面的数组。
var monthActualLWDC = [12,54,65,74,23,47,75,23,57,65,45,33]
元素,
<a id="btn2" onclick="changeTheVariable()" value="monthActualLWDC" class="ui labeled button"></a>
功能,
function changeTheVariable() {
var chartdata = document.getElementById("btn2").value;
}
所以当插入"chartdata"
图表时,它应该显示"monthActualLWDC"
new Chart(document.getElementById("mixed-chart"), {
type: 'bar',
data: {
labels: ["Oct", "Nov", "Dec", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "YTD", "P.FY"],
datasets: [{
label: "Month Actual",
type: "line",
borderColor: "#002db3",
data: chartdata,
fill: false
}, {
label: "Prev. Y. Month Actual",
type: "line",
borderColor: "#000d33",
data: monthActualPYLWD,
fill: false
}, {
label: "Goal",
type: "line",
borderColor: "#e60000",
data: goalLWD,
fill: false
}, {
label: "YTD & P.Fiscal Year",
type: "bar",
backgroundColor: "rgba(0,0,0,0.5)",
data: ytdpfyLWD,
},
]
},
options: {
title: {
display: true,
text: 'CDC - Champaign Distribution Center - KPI'
},
legend: { display: true }
}
});
我不知道我做错了什么......需要帮助。
解决方案
输入的值只是一个字符串,它不会自动被评估为变量。如果要使用字符串名称访问数据,则应将其放入属性名称为字符串的对象中。
var myData = {
monthActualLWDC = [12,54,65,74,23,47,75,23,57,65,45,33]
}
然后您可以将该值用作对象的索引:
function changeTheVariable() {
var chartdata = mYData[document.getElementById("btn2").value];
// code here that uses chartdata to display the chart
}
推荐阅读
- swift - 无法推断 Swift 通用参数“T”
- mongodb - 使用 mongodb 配置进行 vernemq 授权
- ios - 在 ios 上运行 nativescript 时出错,但 xcode 运行成功
- java - 如何将以下一段 java 转换为 kotlin?
- pandas - 使用 If-else 更改 Pandas 中的值
- javascript - 使用 window.stop 停止 Promise
- android - 从与 ROOM 上的数组值部分匹配的列中搜索
- react-hook-form - 允许 Downshift useCombobox 选择不在列表中的项目
- c# - 无法在 AsyncPackage 扩展中命中 OnLoadOptions
- ruby-on-rails - 我在部署heroku时遇到了错误。我正在通过 cloud 9 IDE 做最新的 rails 教程