it-swarm.com.de

Highcharts Error # 16: Diagramme werden nicht auf derselben Seite angezeigt

ich habe eine Website, eine Seite. Ich habe erfolgreich ein Highchart hinzugefügt.

jetzt habe ich genau denselben Code auf dieselbe Seite kopiert, aber eine andere asp-Seite, aber das erste Diagramm ist verschwunden und das zweite Diagramm wird nicht angezeigt.

es gibt mir einen fehler:

Uncaught Highcharts error #16: www.highcharts.com/errors/16 highcharts.js:16
Uncaught SyntaxError: Unexpected token ILLEGAL Dashboard.aspx:657
Uncaught TypeError: Object [object Object] has no method 'highcharts' Dashboard.aspx:405
Uncaught TypeError: Object [object Object] has no method 'draggable' 

irgendwelche Ideen, warum ich das bekomme.

also mein code für das neue chart möchte ich:

 <script type="text/javascript"
$(function () { 
 $('#container').highcharts({
    chart: {
        type: 'bar'
    },
    title: {
        text: 'Fruit Consumption'
    },
    xAxis: {
        categories: ['Apples', 'Bananas', 'Oranges']
    },
    yAxis: {
        title: {
            text: 'Fruit eaten'
        }
    },
    series: [{
        name: 'Jane',
        data: [1, 0, 4]
    }, {
        name: 'John',
        data: [5, 7, 3]
    }]
});
});​
></script>

das Diagramm, das funktioniert, hat folgenden Code:

 <script type="text/javascript"     src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
    <script type="text/javascript" src="http://code.highcharts.com/highcharts.js"></script>



  <script type="text/javascript">

   $(function() {

       $('#container').highcharts({
           chart: {
               type: 'column'
           },
           title: {
               text: 'Chart'
           },
           xAxis: {
           categories: array1
           },
           yAxis: {
               title: {
                   text: 'aWH'
               }
           },
           tooltip: {
               pointFormat: "Value: {point.y:.1f} mm"
           },

           series: [{

               name: '2011-2012',
               color: '#0000FF',
               data: array
           },
           {

               name: '2012-2013',
               color: '#92D050',
               data: array3
           },


             {

                 color: '#FF0000',
                 name: '2013-2014',
                 data: array2
}]
       });

   });

</script>

die 2. Grafik zeigt.

aber der erste Chart nicht, 

beide code ist in verschiedenen acsx seite!

10
m ali

wenn Sie zu Given Error Link gehen

Highcharts-Fehler Nr. 16

Bereits auf der Seite definierte Highcharts

Dieser Fehler tritt beim zweiten Laden von Highcharts oder Highstock auf derselben Seite auf, sodass der Highcharts-Namespace bereits definiert ist. Beachten Sie, dass der Highcharts.Chart-Konstruktor und alle Features von Highcharts in Highstock enthalten sind. Wenn Sie also Chart und StockChart in Kombination ausführen, müssen Sie nur die Datei highstock.js laden.

Prüfen Sie, ob Sie die Skriptbibliothek für Highcharts ein zweites Mal kopiert haben, wenn Ihr Code nur einmal enthalten sollte:

<script src="http://code.highcharts.com/highcharts.js"></script>

Bearbeiten

Sie versuchen, Diagramme in demselben Div anzuzeigen wie $('#container'). Hier ist der Container die ID für div. Wenn beide ascx auf einer Seite rendern, finden sie das gleiche div mit dem Id-Container und rendern das Diagramm, das eines davon überschreibt. so

  1. Mach zwei getrennte divs:

    <div id="container1" style="min-width: 400px; height: 400px; margin: 0 auto"></div>
    <div id="container2" style="min-width: 400px; height: 400px; margin: 0 auto"></div>
    
  2. Entfernen Sie das folgende Skript von ascx und legen Sie es in MasterPage ab:

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
    <script type="text/javascript" src="http://code.highcharts.com/highcharts.js"></script>
    
  3. Für Diagramm eins:

    $('#container1').highcharts({//other code
    

    Für Diagramm zwei:

     $('#container2').highcharts({//other code
    
25
Zaheer Ahmed

Auf diese Weise können Sie den Code umschließen, in dem die Bibliothek Highcharts.js ausgeführt wird:

if (!window.HighchartsUniqueName) {
  window.HighchartsUniqueName = true;

  // .. your code which runs Highcharts.js library here ... 

}

Ich habe es hier gefunden https://stackoverflow.com/a/5154971 und es funktioniert für mich.

Auf diese Weise müssen Sie Ihr Skript nicht in die MasterPage einfügen, wenn Sie Nicht möchten.

Stellen Sie sicher, dass Sie einen sehr eindeutigen Namen verwenden, da es sich um eine globale Variable handelt.

Denken Sie auch daran, dass der Highcharts.Chart-Konstruktor und alle Features von Highcharts in Highstock enthalten sind. Wenn Sie also Chart und StockChart in Kombination ausführen, müssen Sie nur die Datei highstock.js laden oder sie auf dieselbe Weise einpacken .

1
Nikolay Bolonin