Sono abbastanza nuovo per Javascript, Rails e JQuery che lavorano tutti insieme.Problemi nell'ottenere l'Highchart per mostrare
Sto passando questo tutorial (http://www.highcharts.com/documentation/how-to-use#installation) su Highcharts e sto solo cercando di ottenere un grafico di base da mostrare. Non sta succedendo.
Nel mio file home.html.erb ho:
<div id="container" style="width: 100%; height: 400px"></div>
In app/views/layouts/application.html.erb
ho questo nel mio head
tag:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script src="/public/highcharts.js" type="text/javascript"></script>
E questo è il codice in /public/highcharts.js:
var chart1; // globally available
$(document).ready(function() {
chart1 = new Highcharts.Chart({
chart: {
renderTo: 'container',
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]
}]
});
});
Non viene visualizzato nulla quando carico la pagina e non ho idea del perché. Ho fatto il tutorial 3 o 4 volte e ho cercato su Google la risposta senza alcun risultato. Qualsiasi aiuto sarebbe molto apprezzato.
Modifica: ho modificato il percorso nel tag dello script da /public/highcharts.js
a /highcharts.js
. Che mi ha dato i seguenti errori nel mio Console Debugger:
Uncaught ReferenceError: Highcharts is not defined highcharts.js:3
(anonymous function) highcharts.js:3
f.Callbacks.n jquery.min.js:2
f.Callbacks.o.fireWith jquery.min.js:2
e.extend.ready jquery.min.js:2
c.addEventListener.B
il percorso del JS dovrebbe essere 'highcharts.js' senza la parte pubblica. A proposito, Rails aiutanti come' javascript_include_tag' non troverà nella radice della directory pubblica. Se vuoi usare quell'helper, lo vorrai in './public/javascripts' o'./ app/assets/javascripts' a seconda della versione dei binari che stai utilizzando. – Brian
Hai errori JavaScript nella console del debugger nel tuo browser? –
@Brian l'unico punto in cui viene fatto riferimento al percorso di highcharts.js è nel tag head di 'application.html.erb', come ho detto sopra –