Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.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
C# fusionChart未使用Json和C加载动态数据#_C#_Jquery_Json_Charts_Fusioncharts - Fatal编程技术网

C# fusionChart未使用Json和C加载动态数据#

C# fusionChart未使用Json和C加载动态数据#,c#,jquery,json,charts,fusioncharts,C#,Jquery,Json,Charts,Fusioncharts,我有下面的代码在代码背后 protected void Page_Load(object sender, EventArgs e) { hdndata.Value = ShowFusionChart(); } public string ShowFusionChart() { DataTable dt = new DataTable();

我有下面的代码在代码背后

      protected void Page_Load(object sender, EventArgs e)  
       {    
         hdndata.Value = ShowFusionChart();    
       }  

      public string ShowFusionChart()  
       { 
        DataTable dt = new DataTable();     
        dt = LoadGrid();  
        System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();   
        List<Dictionary<string, object>> rows = new List<Dictionary<string, object>>(); Dictionary<string, object> row;    

        foreach (DataRow dr in dt.Rows)        
         { 
         row = new Dictionary<string, object>(); 
         foreach (DataColumn col in dt.Columns) 
           {  
         if (col.ColumnName.ToLower() == "linkname")  
             row.Add("label", dr[col]);  
         if (col.ColumnName.ToLower() == "countno") 
             row.Add("value", dr[col]); 
        } 
        rows.Add(row);  
      }   
       return serializer.Serialize(rows); 
    }  

    Public DataTable LoadGrid()  
     {  
     // This code block is generating a DataTable from database 
     } 
在设计页面

 <div id="chartContainer">FusionCharts XT will load here!</div>   
 <div id="chartContainer2"></div>   


<script type="text/javascript" src="fusioncharts/fusioncharts.js"></script>  
<script type="text/javascript" src="fusioncharts/themes/fusioncharts.theme.zune.js"></script>  

<script type="text/javascript">  

   $(function () {    
 `enter code here`  
    alert($('#hdndata').val());// getting alert with Json Data.  
    FusionCharts.ready(function () {       

    var jdata ;  
    jdata = $('#hdndata').val();  
    //console.log(jdata);    

           var revenueChart = new FusionCharts({  
            type: "column2d",  
            renderAt: "chartContainer",  
            width: "500",  
            height: "300",  
            dataFormat: "json",  
            dataSource: {   
                "chart": {   
                    "caption": "Asset Tracking Report",   
                    "subCaption": "Microsite Report",   
                    "xAxisName": "Assets",   
                    "yAxisName": "Count",   
                    "theme": "zune"   
                },   
                "data": jdata   
            }   
        });    
        revenueChart.render("chartContainer");   

    });   
    });    


</script>    
FusionCharts XT将在此处加载!
$(函数(){
`在此处输入代码`
警报($('#hdnda').val();//获取Json数据警报。
FusionCharts.ready(函数(){
var jdata;
jdata=$('hdnda').val();
//console.log(jdata);
var revenueChart=新的FusionCharts({
键入:“column2d”,
renderAt:“chartContainer”,
宽度:“500”,
高度:“300”,
数据格式:“json”,
数据源:{
“图表”:{
“标题”:“资产跟踪报告”,
“子选项”:“微型站点报告”,
“XaxiName”:“资产”,
“yAxisName”:“Count”,
“主题”:“zune”
},   
“数据”:jdata
}   
});    
revenueChart.渲染(“图表容器”);
});   
});    
仍然没有填充该图表。没有显示错误。消息为“未找到要显示的数据”

如果我在“data”之后提供静态Json格式的数据:那么这就完美了


我的问题是如何使用动态数据运行图表?请帮我找出我的错误。谢谢大家

请注意,如果您的图表显示“无数据显示”消息,则可能是您的数据不包含任何可能由FusionCharts XT绘制的数据或不正确的数据格式

通过传递附加到JSON的“jdata”变量中的数据,可以正确呈现图表,就像我们测试代码一样


似乎问题可能是在从数据库获取数据并通过“jdata”变量传递到图表时引起的。请重新检查“$('#hdnda').val();”代码是否生成了需要传递给图表的正确数据。

Hi Sanjukta,如果我在图表的数据部分传递Json数据,那么图表准备得很好。另外,我检查了hiddenfield是否填充了数据库中的JSON数据,我可以从这行代码中看到hiddenfield的值。警报($('hdnda').val());我已经将数据转换成JSON,然后将变量转换成图表。jdata=JSON.parse($('hdnda').val());这很有效。谢谢大家。
 <div id="chartContainer">FusionCharts XT will load here!</div>   
 <div id="chartContainer2"></div>   


<script type="text/javascript" src="fusioncharts/fusioncharts.js"></script>  
<script type="text/javascript" src="fusioncharts/themes/fusioncharts.theme.zune.js"></script>  

<script type="text/javascript">  

   $(function () {    
 `enter code here`  
    alert($('#hdndata').val());// getting alert with Json Data.  
    FusionCharts.ready(function () {       

    var jdata ;  
    jdata = $('#hdndata').val();  
    //console.log(jdata);    

           var revenueChart = new FusionCharts({  
            type: "column2d",  
            renderAt: "chartContainer",  
            width: "500",  
            height: "300",  
            dataFormat: "json",  
            dataSource: {   
                "chart": {   
                    "caption": "Asset Tracking Report",   
                    "subCaption": "Microsite Report",   
                    "xAxisName": "Assets",   
                    "yAxisName": "Count",   
                    "theme": "zune"   
                },   
                "data": jdata   
            }   
        });    
        revenueChart.render("chartContainer");   

    });   
    });    


</script>