Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.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_Charts - Fatal编程技术网

Javascript Google图表-重新格式化变量不起作用

Javascript Google图表-重新格式化变量不起作用,javascript,charts,Javascript,Charts,在谷歌图表中——当我调用函数从输入中删除变量中的逗号时,它不会工作。 我想要的是谷歌图表中ldsalary(不带逗号)更新的结果。ldsalary值在onkeyup时计算并显示。它将改变 更新:做了一个 onkeyup: document.getElementById('cal').onkeyup=function(){ calculator(); drawChart(); 重新格式化功能: function reformat(str) { while (str.search(",")

在谷歌图表中——当我调用函数从输入中删除变量中的逗号时,它不会工作。 我想要的是谷歌图表中ldsalary(不带逗号)更新的结果。ldsalary值在onkeyup时计算并显示。它将改变

更新:做了一个

onkeyup:

document.getElementById('cal').onkeyup=function(){
calculator();
drawChart();
重新格式化功能:

function reformat(str) {
    while (str.search(",") >= 0) {
        str = (str + "").replace(',', '');
    }
    return str;
};
计算器功能,使用新值更新LDSALLAY:

function calculator(){
.........
var jldsalary = document.getElementById("ldsalary");
 xm = a * Math.pow(1 + jasincrease / 100, b);
jldsalary.value = rounding(xm).toLocaleString(); 
}
图表:

<script type="text/javascript">
var rage = 55 ;
var slry = 5000;

google.load('visualization', '1', {packages: ['corechart']});
google.setOnLoadCallback(drawChart);

    function drawChart() {
    rage =document.getElementById('rage').value *1;
    var xxx = document.getElementById('ldsalary').value *1;
    // if i add this google chart wont show.
    slry.value =reformat(xxx); // without reformat, there will be ',' value.

   var data = new google.visualization.DataTable();

  data.addColumn('number', 'X');
  data.addColumn('number', 'Amount');

  data.addRows([
    [0, 0], [rage,slry],
    [100, 0]
  ]);

  var options = {
    curveType: 'function',
    width: 500,
    height: 200,
    hAxis: {
      title: 'Age'
    },
    vAxis: {
      title: 'Amount'
    }
  };
    var chart = new google.visualization.LineChart(document.getElementById('curve_chart'));
    chart.draw(data, options);
  }

变异系数=55;
var-slry=5000;
load('visualization','1',{packages:['corechart']});
setOnLoadCallback(drawChart);
函数绘图图(){
rage=document.getElementById('rage')。值*1;
var xxx=document.getElementById('ldsalary')。值*1;
//如果我加上这个谷歌图表就不会显示了。
slry.value=重新格式化(xxx);//如果不重新格式化,将有','值。
var data=new google.visualization.DataTable();
data.addColumn('number','X');
data.addColumn('number','Amount');
data.addRows([
[0,0],[rage,slry],
[100, 0]
]);
变量选项={
curveType:'函数',
宽度:500,
身高:200,
哈克斯:{
标题:“年龄”
},
言辞:{
标题:“金额”
}
};
var chart=new google.visualization.LineChart(document.getElementById('curve_chart');
图表绘制(数据、选项);
}


这是做各种解决方案的一天。提前感谢您的帮助。

根据您的代码,您已将
slry
定义为一个变量,并试图使用根本无效的
spry.value
,请更改:

...
slry.value =reformat(xxx); //its just a variable not input element


问题在于重新格式化()


现在它可以工作了:当输入框中的值改变时,谷歌图形也会改变。

对不起。chrome不显示错误。未捕获的TypeError:undefined不是functionerror,而第行上有错误:函数重新格式化(str){WHILE(str.search(“,”>=0){str=(str+”).replace(“,”,”);}返回str;}@AsherMalcom您的行::var xxx=document.getElementById('ldsalary')。值*1;返回NaN,因为您试图将逗号分隔的值乘以1,请尝试删除乘法部分。。当我删除*1时,如果ldsalary发生更改,则无法获取值。其固定值为var slry=5000。但错误已经消失了。
...
slry = reformat(xxx);
function reformat(str) {
    return parseInt(str.replace(',', ''));
}