Javascript highcharts代码中的条件

Javascript highcharts代码中的条件,javascript,highcharts,Javascript,Highcharts,问题 //I am taking this data from my Local Storage var teamactivitygameGraph = window.localStorage.getItem("teamactivitygameGraph"); AGW = JSON.parse(teamactivitygameGraph); var data = AGW.data; alert (data); 我正在尝试在我的手机应用程序上使用Highcharts,该应用程序是使用Phon

问题

//I am taking this data from my Local Storage

var teamactivitygameGraph = window.localStorage.getItem("teamactivitygameGraph");
AGW = JSON.parse(teamactivitygameGraph);
var data = AGW.data;

alert (data);
我正在尝试在我的手机应用程序上使用Highcharts,该应用程序是使用Phonegap开发的。我通过AJAX从数据库中获取数据。当我根据highcharts代码中获得的数据设置{}Else{}条件时,基本上测试并运行良好,这给了我一个错误。无论哪个If,ELSE条件我放在$(函数(){之后,它只会抛出一个错误。代码附在下面。有什么方法可以正常放置条件吗?提前谢谢

代码

    //Get values from local storage
    var teamactivitygameGraph = window.localStorage.getItem("teamactivitygameGraph");
    AGW = JSON.parse(teamactivitygameGraph);

    //Assign values to the variables

    var game_start_on = AGW.game_start_on;
    var data_string = AGW.data_string;
    var data_avail = AGW.data_avail;
    var subText = AGW.subText;
    var graphdefault = user.graphdefault;
    var noofsundays = AGW.noofsundays;
    var total_user = AGW.total_user;
    var data = AGW.data;
    var yellowLineData = AGW.yellowLineData;
    var game_type = AGW.game_type;
    var danger_point = AGW.danger_point;
    var graph_image = AGW.graph_image;

    //Graph..

    $(function () {
       //var graphdefault = graphdefault;
       //var noofsundays = noofsundays;

       if(data_avail == 'no') {
            var styles = "x: -60,y:100,style: {color: '#8eb3ef',fontWeight: 'bold',fontSize: '36px'}";
        }else{
            var styles = "x: -25,";
        }

       if(graphdefault == 1 || (noofsundays == 1 && graphdefault == 1)){
            var showLabels = 'showFirstLabel: false,showLastLabel: false,';
        }

       $('#team_container').highcharts({
        chart: {
            type: 'bar',
            renderTo: 'container',
            zoomType: 'xy',
            events: {
                load: function() {
                    this.renderer.image(graph_image)
                        .add();
                }
            },
            zIndex: 5
        },
        title: {
            text: 'Team Activity Game',
            x: -20 //center
        },
        subtitle: {
             text: subText,
            if(data_avail == 'no') {
                x: -60, //center
                y:100,
                style: {
                 color: '#8eb3ef',
                 fontWeight: 'bold',
                 fontSize: '36px'
                }
            }else{
                x: -25, //center
            }
         },
        xAxis: {
        showLabels
          title: {
               text: 'Week Ending'
              },
            type: 'datetime',
            maxZoom: 24 * 3600000, // Two days
            labels: {
                 rotation: -45,
                 align: 'right',
                 formatter: function() {
                   return Highcharts.dateFormat('%d/%m/%Y', this.value);
                 }
             },
            if(graphdefault == 0){
            tickInterval: 24 * 3600 * 1000 * 7,
            startOfWeek: 0
            }elseif(graphdefault == 1){
            tickInterval: 24 * 3600 * 1000
            }
        },
Json问题

//I am taking this data from my Local Storage

var teamactivitygameGraph = window.localStorage.getItem("teamactivitygameGraph");
AGW = JSON.parse(teamactivitygameGraph);
var data = AGW.data;

alert (data);
当我向var数据发出警报时,它会输出正确的响应,即“{name:“Joe”,数据:[[Date.parse('10/20/2013 UTC'),8.9905667952813]},{name:“Mark”,数据:[]},{name:“Don”,数据:[]}”

但当我在Highchart代码(如下)中放入相同的变量时,它不会显示任何内容

series: [
              data
             ,{
            name: 'yellowline',
            visible: false,
            showInLegend: false,
            data: yellowLineData
             }

        ]
   });

在这里,当您使用highcharts创建图表时,它需要我们传递给它的选项很少,这些选项取决于呈现的图表

在这两组选项之间,您设置了一个条件

而不是使用if-else,可以使用三元运算符

tickInterval: (graphdefault == 0) ? 24 * 3600 * 1000 * 7 : ((graphdefault == 1) ? 24 * 3600 * 1000 * 7 : null),
这将起作用,因为在访问tickInterval选项时会计算条件


试试看,希望这会很有用

当您使用highcharts创建图表时,它需要我们传递给它的选项很少,这些选项取决于图表的呈现方式

在这两组选项之间,您设置了一个条件

而不是使用if-else,可以使用三元运算符

tickInterval: (graphdefault == 0) ? 24 * 3600 * 1000 * 7 : ((graphdefault == 1) ? 24 * 3600 * 1000 * 7 : null),
这将起作用,因为在访问tickInterval选项时会计算条件


试试看,希望这会有用

在JSON中你不能使用条件,它可以在签名预处理期间完成,在JSON中你可以使用returend值。

在JSON中你不能使用条件,它可以在签名预处理期间完成,在JSON中你可以使用returend值。

这是正确的,但当我进行预处理然后对它进行赋值时之后,我在Highcharts函数中调用它,但它没有显示任何内容,而当我提醒同一个变量时,它会显示正确的数据。有帮助吗?请检查标题JSON Problembly下编辑的问题。Problembly数据没有加载,但生成了图表。这是正确的,但当我进行预处理并将其分配给JS时var之后,我在Highcharts函数中调用它,但它不显示任何内容,而当我提醒同一个变量时,它显示正确的数据。有帮助吗?请检查标题JSON Problemly下我编辑的问题Problemly数据未加载,但生成了图表。