2013-06-04 2 views
0

Я создал форму, которая позволит мне редактировать части моей диаграммы. Один из них - это подзаголовок, но по какой-то причине chart.redraw() не работает, и я не получаю сообщение об ошибке. Диаграмма должна быть перерисована после изменения поля ввода. Диаграмма уже обновляется с перерисованием каждую минуту, поэтому я знаю, что она работает иначе, но по какой-то причине в этой единственной функции она не будет вызывать redraw(). Это очень важно, потому что другой вариант - скрыть/показать легенду, и для этого потребуется перерисовать().Получение Highcharts для перерисовки

HTML:

<input type="text" placeholder="Sub Title" data-chart="chart_3972002" data-action="chartSub"> 

JavaScript:

$('input[data-action="chartSub"]').change(function(){   
    $('.unSaved').html('Saving').css('color','#669900').delay(800).fadeOut(); 
    var key = $(this).data('chart'); 
    var chart = JSON.parse(localStorage.getItem(key)); 
    chart.subTitle = $(this).val(); 
    localStorage.setItem(key, JSON.stringify(chart)); 

    var Chart = $('#'+key).highcharts(); 
    Chart.setTitle(null, {text: chart.subTitle}); 
    Chart.redraw(); 
}); 
+0

нормально - по какой-то причине, когда я переключаюсь с Chart.redraw() в Chart.render() он работает, но я не нашел документацию в API Reference для визуализации(). Просто нашел ссылку на него в чужом вопросе, который казался похожим. – jbolanos

ответ

0

Set функция название перерисовывает диаграмму автоматически, поэтому вам не нужно использовать функцию перерисовки().

http://api.highcharts.com/highcharts#Chart.setTitle()

+0

setTitle не перерисовывает диаграмму - он только добавляет/изменяет/удаляет заголовок и субтитры. Если я добавляю субтитры, перекрывается до следующего запланированного обновления графика, которое перерисовывает диаграмму. – jbolanos

+0

Вы открыли связанные примеры, которые вносят различное решение? –

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