JavaScript Eine in .js Datei ausgelagerte Funktion Benutzen.

Tron36

Ensign
Registriert
Jan. 2011
Beiträge
209
Hallo Leute,

ich benutze Highcharts, um Graphen zichnen zu lassen. Die JavaScript Funktion, in der ich den Graph zeichne, habe ich in eine .js datei gepackt und die externe Datei folgendermaßen eingebunden:
HTML:
<script type="text/javascript" src="javaScript/chartDrawer.js"></script>

Auf drücken des folgenden Buttons:
CSS:
<input type="submit" name="action" onclick='InitHighChart()' value="Darstellen" />

Soll der Graph auf folgenden div-Block gezeichnetwerden:
Code:
<div id="chart"></div>

Der javaScript-Code sieht folgendermaßen aus:
Javascript:
function InitHighChart()
{
 
    var checkbox_value = "";
       $(":checkbox").each(function () {
           var ischecked = $(this).is(":checked");
           if (ischecked) {
               checkbox_value += "ch"+$(this).val()+"=true" + "&";
           }else{
             checkbox_value += "ch"+$(this).val()+"=false" + "&";
           }
       });
     
 
   $("#chart").html("Wait, Loading graph...");
 
   var options = {
      chart: {
         renderTo: 'chart',
      },
      credits: {
         enabled: false
      },
      title: {
         text: 'Timestmp Overview',
         x: -20
      },
      xAxis: {
         categories: [{}]
      },
      tooltip: {
            formatter: function() {
                var s = '<b>'+ this.x +'</b>';
              
                $.each(this.points, function(i, point) {
                    s += '<br/>'+point.series.name+': '+point.y;
                });
              
                return s;
            },
            shared: true
        },
      series: [{},{},{},{}]
   };
 
   $.ajax({
      url: "../php/getgraph.php",
      data: checkbox_value,
      type:'post',
      dataType: "json",
      success: function(data){
         options.xAxis.categories = data.categories;
         options.series[0].name = 'Kanal 1';
         options.series[0].data = data.ch1;
         options.series[1].name = 'Kanal 2';
         options.series[1].data = data.ch2;
         options.series[2].name = 'Kanal 3';
         options.series[2].data = data.ch3;
         options.series[3].name = 'Kanal 4';
         options.series[3].data = data.ch4;
         var chart = new Highcharts.Chart(options);       
      }
   });
 
}

Mein Problem ist, dass der Graph nicht meht nicht mehr zeichnet. Als es in der HTML Datei eingebettet war, hat es geklappt.
Die Url in der Funktion(?)
Javascript:
$.ajax
habe ich auch entsprechend geändert, da die js und PHP Dateien eine Ebene unter der HTML Datei befindet.

Ich hoffe ihr könnt mir helfen.

Lg
Tron36
 
Wird die Funktion evtl. vor dem Laden der Datei aufgerufen? Normalerweise sind alle Funktionen übergreifend verfügbar.
 
Die Datei wird im header Bereich geladen. Funktion im Body Bereich
 
wie kriege ich es mit der Konsole heraus?

Zumindes wird:
Code:
Wait, Loading graph...
herrausgegeben.
 
Kann es sein das die getgraph.php nicht geladen wird (404 Fehler), oder das Ergebnis nicht stimmt?
 

Ähnliche Themen

Zurück
Oben