JavaFX JavaScript im Javafx Webview

Bitte aktiviere JavaScript!
Hallo zusammen,

Ich wollte Chartjs im Webview über die LoadContent Methode aufrufen, leider wird nur der statische Wert der HTML aufgerufen und der js Teil nicht. Über die Load Methode ist es möglich. Kann man fast irgendwie umgehen? Der Grund ist, ich habe ein template dahinter der die HTML generiert und die Chartjs API benutzt.

Grüße lam
 
A

Anzeige


Vielleicht hilft dir dieser Kurs hier weiter: (hier klicken)
Hm... Laut Doku ist JavaScript per default aktiviert. Du meinst die #load-Methode hier? Und bei #loadContent geht es nicht? Kann es sein, dass es ein Problem mit dem Import der chartjs-Scripte in deinem Template gibt? Wie sieht denn dein Template aus?
Moin dzim, genau bei der #loadContent Methode übergebe ich den Inhalt als String und bei der #load Methode übergebe ich den Pfad der Html. Die JS Datei ist relativ zu der index.html.

Code:
<!DOCTYPE html>
<html>
  <head>
    <title>World population</title>
    <script src="Chart.min.js"></script>
    <link rel="stylesheet" type="text/css" href="style.css">
  </head>
  <body>
    <div class="wrapper">
      <h1>World population over time</h1>
      <h2>Number of people (in millions) living on earth, the last 500 years</h2>

      <canvas id="myChart" width="1600" height="900"></canvas>
      <script>
        var ctx = document.getElementById('myChart').getContext('2d');

var myChart = new Chart(ctx, {
    type: 'line',
    data: {
        labels: ["Tokyo",    "Mumbai",    "Mexico City",    "Shanghai",    "Sao Paulo",    "New York",    "Karachi","Buenos Aires",    "Delhi","Moscow"],
        datasets: [{
            label: 'Series 1', // Name the series
            data: [500,    50,    2424,    14040,    14141,    4111,    4544,    47,    5555, 6811], // Specify the data values array
            fill: false,
            borderColor: '#2196f3', // Add custom color border (Line)
            backgroundColor: '#2196f3', // Add custom color background (Points and Fill)
            borderWidth: 1 // Specify bar border width
        },
                  {
            label: 'Series 2', // Name the series
            data: [1288,    88942,    44545,    7588,    99,    242,    1417,    5504,    75, 457], // Specify the data values array
            fill: false,
            borderColor: '#4CAF50', // Add custom color border (Line)
            backgroundColor: '#4CAF50', // Add custom color background (Points and Fill)
            borderWidth: 1 // Specify bar border width
        }]
    },
    options: {
      responsive: true, // Instruct chart js to respond nicely.
      maintainAspectRatio: false, // Add to prevent default behaviour of full-width/height
    }
});
        </script>
    </div>
  </body>
</html>
 
Wenn du es so lädst, nehme ich an, dass der Pfad nicht relativ sein kann. Ist das Chart.min.js teil deiner Applikation (also im Jar eingepackt)?

Ich nehme an, du musst einen absoluten Pfad, bzw. eine URL, verwenden (eventuell sogar ins Jar-File verlinken -> Class#getResource).
 
Wenn du es so lädst, nehme ich an, dass der Pfad nicht relativ sein kann. Ist das Chart.min.js teil deiner Applikation (also im Jar eingepackt)?

Ich nehme an, du musst einen absoluten Pfad, bzw. eine URL, verwenden (eventuell sogar ins Jar-File verlinken -> Class#getResource).
Danke Dzim, das war wohl das Problem gewesen. Die Chart.min.js konnte nicht aufgelöst werden.
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben