实际上我的想法如下:我有一个 div 标签,它在脚本标签内显示一个名为“afficher_general()”的函数的结果,还有一个按钮,它调用第一个名为“Ajouter_general()”的函数,它应该改变一个字符串在函数“afficher_general()”中
var general = document.getElementById("general");
general.innerHTML = general.innerHTML.replace('//WRITE', ch);
按钮如下:
<input type="button" value="ajouter au graphe general" id="id1" onClick="Ajouter_general();afficher_general();" />
但这似乎不起作用,因为我被告知脚本只加载一次并且无法更改。那么有什么解决办法吗?提前致谢。
所以我将添加包含功能的内容。实际上我正在与 Amcharts 合作。函数afficher_general如下:
<script name="general" id="general" type="text/javascript">
function afficher_general()
{
chart = new AmCharts.AmSerialChart();
chart.dataProvider = chartData;
chart.categoryField = "country";
chart.startDuration = 1;
// WRITE
chart.write("chartContainer");
}
</script>
而不是评论 //WRITE 我希望在每次按下按钮时添加代码。功能如下:
function Ajouter_general(ind){
var ch="";
var couleur = getSelectValueId("background-color"+ind);
var transparence = getSelectValueId("transparence"+ind);
var type = get_radio_value_type(ind);
var balloon = getSelectValueId("balloon-color"+ind);
if(type == "column")
{
ch=ch+"var graph"+ind+" = new AmCharts.AmGraph();";
ch=ch+"graph"+ind+".valueField = "+"visits"+";"
ch=ch+"graph"+ind+".balloonColor = "+balloon+";";
ch=ch+"graph"+ind+".type = "+type+";";
ch=ch+"graph"+ind+".fillAlphas = "+transparence+";";
ch=ch+"graph"+ind+".fillColors = ["+couleur+"];";
ch=ch+"graph"+ind+".lineColor = ["+couleur+"];";
ch=ch+"chart.addGraph(graph"+ind+");";
ch=ch+"// WRITE";
}
var general = document.getElementById("general");
general.innerHTML = general.innerHTML.replace('//WRITE', ch);
}
由于 Amcharts 使用脚本在图表内绘制图形,因此我希望能够在每次按下按钮时动态添加这些图形。