我的饼图放在div中输出,但是我的div是动态添加的,添加的时候我也写了样式(包括长度、高度等),但是输出之后div的大小就都变了,饼图也看不清了。
下面是我的代码,单击查询的时候,首先是从后台得到了一堆json数据,再循环json对象画出多个饼图。
1 //查询按钮触发事件 2 3 function getCategoryData(cityId, projectId, categoryIds) { 4 $("#chartContainer").empty(); 5 var options = categoryIds.split(','); 6 if (options.length != 0) { 7 for (var i = 0; i < options.length; i++) { 8 var categoryData = options[i]; 9 if (cityId != 0 && projectId != 0 && categoryData != 0) { 10 $.ajax({ 11 url: "../ASHX/Statistics.ashx", 12 data: { MotchName: "btnSearchClick", CityID: cityId, ProjectID: projectId, CategoryData: categoryData }, 13 type: "POST", 14 beforeSend: function () { }, 15 complete: function () { }, 16 error: function () { }, 17 success: function (data) { 18 var collectDiv = '<div id="zfp' + categoryData + '" style="width:33%;heigth:100%;float:left;border:1px solid red"></div>'; 19 $(collectDiv).appendTo($("#chartContainer")); 20 var chart = new AmCharts.AmPieChart(); 21 chart.dataProvider = data; 22 chart.titleField = "CategoryName"; 23 chart.valueField = "CategoryCount"; 24 chart.outlineColor = "#FFFFFF"; 25 chart.outlineAlpha = 0.8; 26 chart.outlineThickness = 2; 27 //chart.write("chartContainer"); 28 chart.write("zfp" + categoryData); 29 }, 30 dataType: "json", async: false 31 }); 32 } 33 else { 34 alert("选择要查询的条件"); 35 } 36 } 37 } 38 }
目测应该是你的设置的css级别!导致没有生效!是不是amcharts 有默认的大小!