2015-12-09 1 views
0

Когда я нажимаю на свою кнопку, серия на короткое время исчезает, тогда экран появляется, чтобы обновиться, тогда весь график исчезает, я пропущу что-то простое. Пожалуйста, смотрите ниже кодЯ пытаюсь нажимать кнопку скрыть на моем highchart, но это заставляет диаграмму исчезнуть

<script type="text/javascript"> 
$(function() { 
$('#container').highcharts({ 
chart: { 
type: 'line' , 
zoomType: 'x' 
}, 

xAxis: { type: 'datetime', 
labels: { 
formatter: function() {return Highcharts.dateFormat('%e/%m/%Y <br/> %H:%M:%S', this.value); 
} 
}, 

tickmarkPlacement: 'on', 
    gridLineWidth: 1 

    }, 
    yAxis: { 
title: { 
     text: engUnit, 
} 
    }, 
    series: [{ 
    name: userID, 
     data: <%= chartData%> 
    }, 

    { 
     name: 'High Alarm Value', 
     data: <%= chartDataMax%> 
    }, 

    { 
    name: 'Low Alarm Value', 
    data: <%= chartDataMin%> 
    } 

    ] 
    }); 

var chart = $('#container').highcharts(), 
    $button = $('#button'); 
$button.click(function() { 
    var series = chart.series[1]; 
    var series1 = chart.series[2]; 
    if (series.visible) { 
     series.hide(); 
     series1.hide(); 
     $button.html('Show series'); 
    } else { 
     series.show(); 
     series1.show(); 
     $button.html('Hide series'); 
    } 
     }); 
}); 
</script> 

часть, где я показывать мой график на экране с помощью главной страницы

<button id="button" class="autocompare">Hide series</button> 
<div id="container" style="height: 376px; width: 880px; position: relative; left: 4px; margin-top: -210px; top: 231px;" > 
</div> 
+0

Когда вы говорите «весь график», вы имеете в виду, что ничего не видно вообще, или вы имеете в виду, что метки оси больше не отображаются? Если последний, попробуйте добавить min и max для каждой оси. Во-вторых - в чем смысл? Почему вы хотите, чтобы пользователь мог показывать пустой график без данных ...? – jlbriggs

+0

@jlbriggs Я думаю, что эта кнопка должна показать/скрыть сигналы тревоги - обратите внимание на три серии в настройках. Код выше должен работать, есть ли у вас какие-либо ошибки в консоли JavaScript? –

+1

@ PawełFus Ах, право. В этом случае кажется, что это было бы более плавным, если бы вы использовали свойство linkedTo и связали две серии аварийных сигналов вместе и назвали серию «Alarms» или что-то подобное - таким образом, есть только одна запись легенды для двух серий, и при нажатии, он переключает видимость обеих рядов – jlbriggs

ответ

0

Я был, очевидно, плохой день на прошлой неделе. Причина, по которой она исчезала, была связана с обратной передачей на элементе управления, который я использую, чтобы выбрать дату.

Как только я нажму кнопку «показать/скрыть», кнопка вернется назад и заставляет экран обновляться.

Смежные вопросы