線がチャートに追加されたときにボタンを作成するコードがあります。ボタンがクリックされたら、チャートから線を外してボタンを削除したいです。例はここで見ることができます。
つまり、ボタンを正常に追加するコードは次のとおりです。
function getChartData(option){
var category = $('#category').val();
var option = option.value;
var seriesTitle = category+option;
$.ajax({
url: "getData.php?action=getChartData",
type: "GET",
dataType:"json",
data: {
category:category,
option:option
},
success: function(json){
chart.addSeries({
name: seriesTitle,
data : []
});
$.each(json.Data,function(){
chart.series[chart.series.length-1].addPoint([parseFloat(this.Year), parseFloat(this[option])]);
});
}
});
var series = document.createElement('button');
series.onclick = function(){
removeLine(seriesTitle);
}
series.setAttribute('id',seriesTitle);
series.innerHTML=seriesTitle;
$('#removeLine').append(series);
}
ボタンがクリックされると、このコードは何もしません。
function removeLine(seriesTitle){
chart.series[seriesTitle].remove();
$(seriesTitle).remove();
}
エラーは次のとおりです。
Uncaught TypeError: Cannot call method 'remove' of undefined
removeLine oil.js:172
series.onclick
変数に基づいてハイチャートで特定の行を呼び出す方法を知っている人へのボーナスポイント。たとえば、これは機能します。
chart.series[chart.series.length-1].remove();
これはしません:
chart.series[seriesTitle].remove();