Foros del Web » Programando para Internet » Jquery »

Problemas Unexpected token o in JSON at position 1

Estas en el tema de Problemas Unexpected token o in JSON at position 1 en el foro de Jquery en Foros del Web. Buenos dias, tengo un problema que no he podido resolver en el javascript, tengo una consulta que proviene de un metodo "LlistarCargaACademica", el metodo develve ...
  #1 (permalink)  
Antiguo 01/02/2021, 09:37
 
Fecha de Ingreso: agosto-2014
Ubicación: barranquilla
Mensajes: 93
Antigüedad: 10 años, 4 meses
Puntos: 0
Problemas Unexpected token o in JSON at position 1

Buenos dias, tengo un problema que no he podido resolver en el javascript, tengo una consulta que proviene de un metodo "LlistarCargaACademica", el metodo develve un Json que puedo ver en la consola generado.

esta es la consulta json

[{id_carga_academica: 65, estado_carga: "on", id_docentefk: 3, nombre_docente: "ALFARO JOSE",…}]


este es el error
SyntaxError: Unexpected token o in JSON at position 1
at JSON.parse (<anonymous>)
at Object.<anonymous> (<anonymous>:18:29)
at l (jquery.min.js:2)
at c (jquery.min.js:2)

Código Javascript:
Ver original
  1. function ListarCargaAcademica() {
  2.         var IDdocente     = $("#IDdocente").val();
  3.         var CargaPeriodo  = $("#CargaPeriodo").val();
  4.        $.get("Pepa/CargadelDocente/ListarCargaAcademica?IDdocente="+ IDdocente +"&CargaPeriodo=" + CargaPeriodo )
  5.         .then(function(response){
  6.             var j=1;
  7.             var data = JSON.parse(response)
  8.             var tabla = $("#tbl_carga_academica_docente")
  9.             tabla.find("tbody").html("");
  10.             var html = ""
  11.          
  12.  
  13.           data.forEach(function(element, index) {
  14.                 html += '<tr>'
  15.                 html += '<td>' + j + '</td>'
  16.                 html += '<td>' + element.nombre_docente + '</td>'
  17.                 html += '<td>' + element.apellido_docente + '</td>'
  18.                 html += '<td>' + element.codigocurso + '</td>'
  19.                 html += '<td>' + element.nombre_sede + '</td>'
  20.                 html += '<td>' + element.nombre_horario + '</td>'
  21.                 html += '<td>' + element.dia + '</td>'
  22.                 html += '<td>' + element.periodo + '</td>'
  23.                 html += '</tr>'
  24.                j++;
  25.             })
  26.             tabla.find("tbody").append(html)
  27.         })
  28.         .catch(function(ex) { console.error(ex); })
  29.  
  30. }
  #2 (permalink)  
Antiguo 01/02/2021, 16:20
 
Fecha de Ingreso: abril-2006
Mensajes: 583
Antigüedad: 18 años, 7 meses
Puntos: 120
Respuesta: Problemas Unexpected token o in JSON at position 1

Cita:
Iniciado por josegaitan123 Ver Mensaje
Buenos dias, tengo un problema que no he podido resolver en el javascript, tengo una consulta que proviene de un metodo "LlistarCargaACademica", el metodo develve un Json que puedo ver en la consola generado.

esta es la consulta json

[{id_carga_academica: 65, estado_carga: "on", id_docentefk: 3, nombre_docente: "ALFARO JOSE",…}]
veo que tienes 3 puntos seguidos casi al final de tu JSON y eso da como resultado mal formado, ahora si es que pusiste COPY PASTE, lo mas seguro es que tu informacion que tu servidor genera en JSON esta viniendo con un caracter invisible y eso da error ,ese error es comun con servidores APACHE-PHP y tus archivos tenga el simbolo UTF8-BOM

para descartar eso, hazlo simple,
en este apartado
Código Javascript:
Ver original
  1. var data = JSON.parse(response)

cambialo por

Código Javascript:
Ver original
  1. alert(JSON.stringify(response));
  2. var data = JSON.parse(response)

y mira en la alerta los primeros simbolos,

si esta correcto tu JSON deberia de mostrart

Código HTML:
"{[
de lo contrario y casi seguro es qu te mostrara algo como
Código HTML:
"0x00{[
__________________
Mis aportes te ayudaron??, te hicieron ahorrar valiosos tiempo??, si quieres puedes agradecerme con un Gracias o con una donacion
https://paypal.com/pools/c/8lmNLmWnG9
  #3 (permalink)  
Antiguo 01/02/2021, 20:36
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Problemas Unexpected token o in JSON at position 1

El problema no está en el lado del cliente sino en el del servidor. Te podría ser de ayuda el que imprimas el resultado desde el lado del servidor para que compruebes si hay errores en la salida completa de datos.

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #4 (permalink)  
Antiguo 02/02/2021, 08:21
 
Fecha de Ingreso: agosto-2014
Ubicación: barranquilla
Mensajes: 93
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: Problemas Unexpected token o in JSON at position 1

[{"id_carga_academica":65,
"estado_carga":"on",
"id_docentefk":3,
"nombre_docente":"ALFARO JOSE",
"apellido_docente":"MEDINA GUTIERREZ",
"id_cursodetallefk":61,
"id_sedefk":18,
"nombre_sede":"PRINCIPAL",
"id_horariofk":8,
"nombre_horario":"7:00am - 1:30PM ",
"dia":"Sabado-ma\u00f1ana",
"codigocurso":"20-01ADM",
"id_periodofk":15,
"periodo":"20-01",
"nombre_modulo":"INFORM\u00e1TICA B\u00e1SICA"}]

Esta es la estructura del json que se imprime en el response de la inspección del navegador, para dar mayor claridad a lo que se esta ejecutando

Última edición por josegaitan123; 02/02/2021 a las 08:36
  #5 (permalink)  
Antiguo 02/02/2021, 14:25
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Problemas Unexpected token o in JSON at position 1

¿Cómo generas el JSON en el lado del servidor?

Y solo por mera curiosidad, ¿qué resultado obtienes si, en lugar de lo que tienes, ejecutas esto?

Código Javascript:
Ver original
  1. $.ajax({
  2.     url: "Pepa/CargadelDocente/ListarCargaAcademica",
  3.     data: {
  4.         IDdocente: IDdocente,
  5.         CargaPeriodo: CargaPeriodo
  6.     },
  7.     dataType: "json"
  8. }).done(function(response){
  9.     console.log(response);
  10. });
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #6 (permalink)  
Antiguo 03/02/2021, 08:30
 
Fecha de Ingreso: agosto-2014
Ubicación: barranquilla
Mensajes: 93
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: Problemas Unexpected token o in JSON at position 1

Buenos dias
Hay un modelo y un controlador que llama la consulta en la url del javascript

modelo

Código PHP:
Ver original
  1. public function ListarCargaAcademica ($IDdocente,$CargaPeriodo){
  2.         $select="SELECT id_carga_academica,
  3.                        estado_carga,
  4.                        id_docentefk,
  5.                        nombre_docente,
  6.                        apellido_docente,
  7.                        id_cursodetallefk,
  8.                        id_sedefk,
  9.                        nombre_sede,
  10.                        id_horariofk,
  11.                        nombre_horario,
  12.                        dia,
  13.                        codigocurso,
  14.                        id_periodofk,
  15.                        periodo,
  16.                        nombre_modulo
  17.                FROM
  18.                    carga_academica ca
  19.                    INNER JOIN docente              d ON ca.id_docentefk=d.id_docente
  20.                    INNER JOIN  curso               c ON ca.id_cursodetallefk = c.id_cursodetalle
  21.                    INNER JOIN  sede                s ON c.id_sedefk=s.id_sede
  22.                    INNER JOIN  horario             h ON c.id_horariofk=h.id_horario
  23.                    INNER JOIN  periodo             p ON ca.id_periodofk=p.id_periodo
  24.                    INNER JOIN  modulo              m ON ca.id_modulofk=m.id_modulo
  25.                    WHERE id_periodofk=:id_periodofk AND id_docentefk=:id_docentefk
  26.                    ORDER BY id_periodofk ASC";
  27.                     $parametros = array(":id_docentefk"=>$IDdocente,":id_periodofk"=>$CargaPeriodo);
  28.                     $respuesta=$this->table($select,$parametros);
  29.                     return $respuesta;
  30.     }

método
Código PHP:
Ver original
  1. $cd = new CargadelDocente();
  2.  
  3. if(isset($_GET['case'])){ $case = $_GET['case'];  }
  4.  
  5. switch($case){
  6.    
  7. // case para el listado de los docentes
  8.     case'ListarCargaAcademica':
  9.       $IDdocente      =$_GET['IDdocente'];
  10.       $CargaPeriodo   =$_GET['CargaPeriodo'];
  11.  
  12.       $ListarCargaAcademica = $cd->ListarCargaAcademica($IDdocente,$CargaPeriodo);
  13.       $json = json_encode($ListarCargaAcademica);
  14.     break;
  15. }
  16. echo $json;
  17.  
  18. ?>
  #7 (permalink)  
Antiguo 03/02/2021, 08:46
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Problemas Unexpected token o in JSON at position 1

Parece que todo estuviera en orden. ¿Intentaste lo que te sugerí?
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #8 (permalink)  
Antiguo 04/02/2021, 07:38
 
Fecha de Ingreso: agosto-2014
Ubicación: barranquilla
Mensajes: 93
Antigüedad: 10 años, 4 meses
Puntos: 0
Respuesta: Problemas Unexpected token o in JSON at position 1

Si realice el cambio que me sugeriste en el javascript, pero continua el error
  #9 (permalink)  
Antiguo 04/02/2021, 11:02
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Problemas Unexpected token o in JSON at position 1

¿Qué error se muestra ahora? Ten en cuenta que te sugerí que hagas una prueba con ese trozo de código en lugar del que tienes.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: json, position, token, unexpected
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:40.