Con que pongas tan solo una vez google.charts.load('current',
{'packages':['corechart']}); ya te debería funcionar. Ponlo al principio.
El martes, 9 de febrero de 2016, 0:56:17 (UTC+1), Luis Javier Bautista
Barahona escribió:
>
> Trato de cargar una gráfica en un script que se carga al hacer submit
> desde otro archivo con javascript y jquery:
>
> Script1.php
> <form class="form-inline" method="post" id="form-select-fecha">
> <div class="form-group">
> <label for="cbox_yy">Año:</label>
> <select class="form-control" id="cbox_yy" name="cbox_yy" required>
> <option value="2015">2015</option>
> <option value="2016">2016</option>
> </select>
> </div>
> <button type="submit" class="btn btn-primary">Seleccionar</button>
>
> </form>
>
> <div id="div-tienda-reporte-ventas-resultados"></div>
>
> <script>
> $(document).ready(function() {
>
> $("#div-tienda-reporte-ventas-resultados").load('php/views/view_tienda_reporte_ventas_resultados.php');
> $("#form-select-fecha").submit(function(){
> var yy = $('#cbox_yy').val();
>
> $("#div-tienda-reporte-ventas-resultados").load('php/views/view_tienda_reporte_ventas_resultados.php',{year:yy});
> return false;
> });
> });
> </script>
>
> scrip2.php
> <script type="text/javascript" src="
> https://www.gstatic.com/charts/loader.js"></script>
> <?php
> if(isset($_POST['year'])){
> #Codigo PHP
> #...
> $datos=$obj_datos->obtenerYY($_POST['year']);
> ?>
> <hr>
> <div id="grafica" style="width: 900px; height: 500px"></div>
> <?php } ?>
>
> <script type="text/javascript">
> google.charts.load('current', {'packages':['corechart']});
> google.charts.setOnLoadCallback(drawChart);
> function drawChart() {
> var data = google.visualization.arrayToDataTable([
> ['TIT1', 'TIT2'],
> [<?php #CODIGO PHP PARA MOSTRAR DATOS ?>],
> ]);
> var options = {
> title: 'VENTAS POR MES',
> legend: { position: 'bottom' }
> };
> var chart = new
> google.visualization.BarChart(document.getElementById('grafica'));
>
> chart.draw(data, options);
> }
> </script>
>
>
> La primera vez muestra correctamente los datos, pero la segunda vez que le
> doy click al boton del script1.php no carga el script2 y me muestra en
> consola el error:
>
> Uncaught Error: google.charts.load() cannot be called more than once.
>
>
> Entiendo que no puedo llamar por segunda vez load(), ¿existe alguna forma
> de que el evento no se vuelva a cargar o volver a recargar todo el
> contenido del script2.php ????
>
> De antemano gracias!
>
--
You received this message because you are subscribed to the Google Groups
"Google Visualization API" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/google-visualization-api.
To view this discussion on the web visit
https://groups.google.com/d/msgid/google-visualization-api/065f3ce8-b8c8-4d52-97aa-c87d5ab5fdd6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.