【问题标题】:Change Javascript Var on element onclick在元素 onclick 上更改 Javascript Var
【发布时间】:2018-05-04 21:51:59
【问题描述】:

全部,

我正在尝试更改一个 Javascript 变量,该变量用于根据单击元素在图表上填充数据,但似乎无法使其正常工作。有人可以帮忙吗?

我有下面的变量,每当我单击 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 }
            }
        });

我不知道我做错了什么...需要帮助。

【问题讨论】:

  • 我没有看到任何图表...?
  • 我添加了图表。我正在尝试更改基于点击的图表数据数组,因此图表会根据被点击的 动态更新。
  • 另外,我认为“值”对于锚元素无效。
  • 我尝试使用按钮,它也不起作用,我应该在 div 上使用它吗?

标签: javascript onclick onchange var


【解决方案1】:

输入的值只是一个字符串,它不会自动被评估为变量。如果要使用字符串名称访问数据,则应将其放入属性名称为字符串的对象中。

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
}

【讨论】:

    猜你喜欢
    • 2021-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-29
    • 2013-02-22
    • 2012-03-15
    相关资源
    最近更新 更多