Comment puis-je réparer Highcharts erreur n ° 13?
- Je utiliser highchart ainsi, l'utilisateur peut fermer et ouvrir le tableau de la page et redessiner la carte, dans certains cas, donne-moi de cette erreur, comment puis-je résoudre ce problème, Merci
Voici mon code
function populateGraph(graph1data1,graph1data2,id,time,bottomText,tickinterval){
$(function () {
$('#'+id).highcharts({
chart: {
type: 'line'
},
xAxis: {
tickWidth: 0,
categories: ['1,2,3,4']
},
yAxis: {
gridLineColor: '#fff',
title: {
text: ''
},
labels: {
formatter: function() {
return '';
}
}
},
navigation: {
buttonOptions: {
enabled: false
}
},
series: [{
name: 'This ',
data: [1,2,3,4],
color: '#1e71ef'
}, {
name: 'Last ',
data: [5,6,7,8],
color:'#dfe0e1'
}]
});
});
}
}
function loadOnlineDashboardChannel(channel){
$.ajax({
type: "get",
dataType: 'html',
data: {},
url: "/companies/2/online_dashboard_channel",
success: function(data, status){
var obj = JSON.parse(data);
var template_data = {
measures_list:
obj.measures
};
$(function() {
var tmplHTML_measures = '{{#measures_list}} <div class="col-lg-11 col-lg-offset-1"><p class="indicator-title gray-bottom-border">{{name}}</br></p><div><p><span class="font30px">{{total}} </span> Total {{name}}<br><span class="green-text">{{increase}}%</span> from last <span class="metric_time"></span></p></div><div class="graph-header"><h3>{{this_interval}} </h3><p>New {{name}}</p><p class="percentage-graph green-text">{{percentag e}}%<p></div><div id={{graph_id}} class="graph"></div> </div>{{/measures_list}}';
Handlebars.render = function(tmpl, data){data = data || {};return Handlebars.compile(tmpl)(data);};
$("#template").empty().append(Handlebars.render(tmplHTML_measures,template_data) );
var data_graph;
for ( var i = 0; i < obj.measures.length; i++ ) {
data_graph=obj.measures[i];
populateGraph(data_graph.this_interval_detail,data_graph.last_interval_detail,data_graph.graph_id,time,obj.bottom_graph_text,parseInt($('#timeframe-select').find(":selected").attr('interval')) );
}
})
},
error: function(error) {
}
});
return this;
};
- Je utiliser guidon donc dans cette partie
dans
var tmplHTML_measures
J'ai créer la div, de la pour les je appeler la fonction pour tracer le graphique.
Merci, je le répète parfois, il fonctionne parfaitement et parfois ne parviennent pas me donner l'erreur #13
- Salut, j'ai modifier mon post et ajouter un peu de code, Parfois, le travail et parfois pas, l'id de l'élément est ok, merci
- Si highcharts est de lancer cette erreur que le sélecteur jquery
$('#id')
est de retour rien. J'imagine que vous n'avez pas votre.highcharts
appel enveloppé dans un$(function ()
mais dans le code ci-dessus, vous avez que. Bien que vous avez un supplément de}
à la fin qui ne lui appartient pas. Êtes-vous sûr que le div id est unique?id="id"
semble comme une pauvre convention de nommage. - oui mon id est unique, je crée dynamiquement avec un nom unique, j'utilise le guidon pour que
- Si vous avez besoin d'avoir aussi ce nom dans highcharts, l'id de la div besoin d'être le même que le nom de sélecteur qui permet de créer highcharts
InformationsquelleAutor Marion | 2014-02-03
Vous devez vous connecter pour publier un commentaire.
J'ai affronté le même message d'erreur et ce que j'ai appris à connaître est que l'Erreur#13 se produit lorsque HighCharts.js tente d'accéder à un élément qui n'est pas présent dans le DOM.
Comment je fixe?
J'ai fait en sorte que le HightCharts méthode n'est appelée que lorsque mon ciblées élément est créé dans le DOM. Bingo!!!! Tout a bien fonctionné.
'#mainChartDiv'
au lieu de simplement'mainChartDiv'
. Ce dernier a fonctionné correctement.J'ai eu le même problème et résolu en utilisant le conteneur approprié:
Dans mon cas, j'ai utilisé les éléments suivants:
et dans le fichier HTML:
J'ai trouvé la solution de Highcharts: http://forum.highcharts.com/viewtopic.php?f=9&t=15610
Ce qui concerne.
Catégories doit être une collection, c'était comme ça:
Changer à cela:
Certains champs de données doivent être entourés de guillemets simples comme ceci:
Ici est un violon sans erreurs pour vous:
http://jsfiddle.net/MVcBe/
Bonne chance avec le reste. 🙂
ps je trouve parfois, il est plus facile de modifier un travail de violon de la highcharts site et de l'adapter à ce que vous avez besoin. Comme celui-ci:
http://jsfiddle.net/gh/get/jquery/1.9.1/highslide-software/highcharts.com/tree/master/samples/highcharts/demo/line-basic/
Pour moi, l'erreur a été résolu lorsque j'ai placé l'appel
script
après l'élément HTML.Comme;
Aussi, si vous vérifiez sur le haut du graphique du site, il est dit:
https://www.highcharts.com/errors/13
Peut-être un peu en retard à la fête, mais le nom par défaut du conteneur dans Highcharts exemple a été "container". Le navigateur n'a pas l'air d'aimer cela, conflit de nom peut-être, de changer de 'Graphique' a fait le tour.
Aussi, assurez-vous que "highcharts-more.js" est déclarée dans votre code HTML.
J'ai chargé codes script après le document prêt de la fonction, et il a bien fonctionné.
J'ai également exécuter dans le même code d'erreur, mais dans mon cas, la raison en était que mes données était trop volumineux pour être pris en charge