Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用计算总和作为Google图表的数据_Javascript_Jquery_Google Visualization - Fatal编程技术网

Javascript 使用计算总和作为Google图表的数据

Javascript 使用计算总和作为Google图表的数据,javascript,jquery,google-visualization,Javascript,Jquery,Google Visualization,我正试图用Google Visualization API创建一个图表,使用javascript计算对选中单选按钮的值求和,但是我无法让API将输出接受为散点图的数据 Javascript: $(document).ready(function(){ var radios = $('input[type=radio]'); var evalResult = function(){ var numQuestions = 80; var sum1 = 0; var

我正试图用Google Visualization API创建一个图表,使用javascript计算对选中单选按钮的值求和,但是我无法让API将输出接受为散点图的数据

Javascript:

$(document).ready(function(){
  var radios = $('input[type=radio]');

  var evalResult = function(){

    var numQuestions = 80;
    var sum1 = 0;
    var sum2 = 0;

    var expr_str = '';
    for(var i = 1; i <= numQuestions; i++){
      var q = $("input[type=radio][name=q"+i+"]:checked").val();
      var value = q.split(',');
      sum1 += parseInt(value[0]);
      sum2 += parseInt(value[1]);

    }

    var total = eval("['',''],[" + sum1 + "," + sum2 + "]");
  }

  evalResult();
  radios.change(evalResult);

});

我尝试过各种不同的解决方案,有些是文档中建议的,有些是我在其他地方找到的类似方法的例子,但似乎没有任何效果。作为这类事情的新手,我显然错过了一些简单的事情,或者只是做错了。非常感谢您的帮助。

您需要在使用函数之前定义
total

$(document).ready(function(){
  var radios = $('input[type=radio]');
  var total = 0;                                 //<<<<<<<<<<<<<<<<<< here
  var evalResult = function(){

    var numQuestions = 80;
    var sum1 = 0;
    var sum2 = 0;

    var expr_str = '';
    for(var i = 1; i <= numQuestions; i++){
      var q = $("input[type=radio][name=q"+i+"]:checked").val();
      var value = q.split(',');
      sum1 += parseInt(value[0]);
      sum2 += parseInt(value[1]);

    }

    total = eval("['',''],[" + sum1 + "," + sum2 + "]"); // <<< remove var from here
  }
  alert(total);   // output should be 0
  evalResult();
  alert(total);   // output should be your total
  radios.change(evalResult);

});
$(文档).ready(函数(){
变量无线电=$('input[type=radio]');

var total=0;//找出了它不工作的原因,需要使用DataTable能够理解的格式

total = [['',''],[sum1, sum2]];

现在它可以正常工作了。

我认为它可能与定义变量有关,但这似乎没有什么区别,图表仍然没有绘制出来。该函数可以作为HTML输出,但当我尝试通过API时,什么都没有发生。@DanielJarick这是你要找的链接吗???I've已经花了一些时间阅读文档,主要是手动输入数据表或查询数据库。我在支持论坛上看到了与我想要实现的类似的示例参考,但它们并不完全是我想要的。我将再看一看它们,但我认为它们不会是我想要的这是我的帮助。
total = [['',''],[sum1, sum2]];