Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.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和html块_Javascript_Html_Highcharts - Fatal编程技术网

动态生成javascript和html块

动态生成javascript和html块,javascript,html,highcharts,Javascript,Html,Highcharts,在我的网站中,我目前使用3个csv文件,这些文件由highcharts使用以下javascript呈现: $(文档).ready(函数(){ $.get('export_xxxx.csv',函数(csv){ $('#xxx')。高图({ 数据:{ csv:csv }, 标题:{ 文字:“推特(@xxxxx)” }, 亚克斯:{ allowDecimals:false, 标题:{ 文本:“用户” } }, 系列:[{ 可见:正确 }, { 可见:假 }], 打印选项:{ 行:{ 数据标签:{ 已

在我的网站中,我目前使用3个csv文件,这些文件由highcharts使用以下javascript呈现:

$(文档).ready(函数(){
$.get('export_xxxx.csv',函数(csv){
$('#xxx')。高图({
数据:{
csv:csv
},
标题:{
文字:“推特(@xxxxx)”
},
亚克斯:{
allowDecimals:false,
标题:{
文本:“用户”
}
},
系列:[{
可见:正确
}, {
可见:假
}],
打印选项:{
行:{
数据标签:{
已启用:true
}
} 
},
});
});
});
$(文档).ready(函数(){
$.get('exportxxxxyy.csv',函数(csv){
$('#xxx')。高图({
数据:{
csv:csv
},
标题:{
文本:“推特(@xxxx)”
},
亚克斯:{
allowDecimals:false,
标题:{
文本:“用户”
}
},
系列:[{
可见:正确
}, {
可见:假
}],
打印选项:{
行:{
数据标签:{
已启用:true
}
}
},
});
});
});
$(文档).ready(函数(){
$.get('export\u xxx\u.csv',函数(csv){
$('#xxx')。高图({
数据:{
csv:csv
},
标题:{
文字:“推特(@xxx)”
},
亚克斯:{
allowDecimals:false,
标题:{
文本:“用户”
}
},
系列:[{
可见:正确
}, {
可见:假
}],
打印选项:{
行:{
数据标签:{
已启用:true
}
}
},
});
});

});代替重复代码,您可以将常用代码包装到
函数中,并在需要使用数据呈现图表时调用

renderCharts
函数接受csv数据和id值

function renderCharts(data,key){
 $('#' + key).highcharts({
               data: {
                  csv: data
               },
               title: {
                  text: 'Twitter (@xxx)'
               },
               yAxis: {
                  allowDecimals: false,
                  title: {
                     text: 'Users'
                  }
               },
               series: [{
                  visible: true
               }, {
                  visible: false
               }],
               plotOptions: {
                  line: {
                     dataLabels: {
                        enabled: true
      }
      }
}})
};


$(document).ready(function() {
   var ids = ['export_xxx_.csv','export_xxxxyy.csv','export_xxxxyyddd.csv'];
   var promises = [];
  ids.forEach(function(id){
      promises.push($.get(id));
  });

  $.when(promises).then(function(values){
    values.forEach(function(value){
      renderCharts(value,'xxx');
   })
  });
}

假设您的Web服务器对文件列表给出JSON响应,比如说

['/data1.csv',/date2.csv',…]

你可以用这样的东西

$.get('/data', function(listOfFiles) {
  for (var i = 0; i < listOfFiles.length; i++) {
    $('body').append('<div id="chart' + i + '" style="width: 49%; height: 400px; margin: 0 auto;float:left;"></div>');
    $.get(listOfFiles[i], function(csv) {
      $('#chart' + i).highcharts({
        .....
      });
    });
  }
});
$.get('/data',函数(listOfFiles){
对于(var i=0;i
不过,理想情况下,您应该有一个API从数据库检索数据 数据库而不是使用文件