Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

399
Vistas
Filtrar la lista de productos usando Ajax en Laravel

Estoy implementando el filtrado de productos para mi proyecto. Funciona correctamente en product.main.blade . Pero al hacerlo en product.list.blade con la misma estructura de código, el sistema da el error "SyntaxError: Token inesperado < en JSON en la posición 0". Por lo que sé, la causa es que los datos no son del tipo JSON. Creo que el problema radica en las rutas que hacen que no se envíen los datos. Entonces, ¿alguien puede ayudarme a solucionarlo? ¡Muchas gracias!

Mi controlador :

 function ajax_sort(Request $request) { $cat_id = $request->cat_id; $select = $request->sort; $data=array( 'cat_id'=>$cat_id, 'select'=>$select ); echo json_encode($data); }

codigo jquery :

 $("form select").change(function() { var cat_id = $("#cat-tilte").attr('data-id'); var sort = $(this).val(); var data = { cat_id, sort: sort }; $.ajax({ url: "ajax_sort", method: 'GET', data: data, dataType: 'json', success: function(data) { console.log(data); }, error: function(xhr, ajaxOptions, thrownError) { alert(xhr.status); alert(thrownError); } }); });

Y las rutas que configuré :

 Route::get('product/list/{cat_id}',[ProductController::class,'list']); Route::get('product/main',[ProductController::class,'main']); Route::get('product/ajax_sort',[ProductController::class,'ajax_sort']);

Editar : el motivo es que la URL y la ruta son incorrectas, lo he solucionado.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Parece que te has perdido esta parte en tu código:

 var data = { cat_id:cat_id, sort: sort };
over 4 years ago · Santiago Trujillo Denunciar

0

Encontré el error en la url:

 $("form select").change(function() { var cat_id = $("#cat-tilte").attr('data-id'); var sort = $(this).val(); var url = route('product.ajax_sort', cat_id); var data = { sort: sort }; console.log(url); $.ajax({ url: url, method: 'GET', data: data, dataType: 'json', success: function(data) { $(".result-sort").html(data.result); }, error: function(xhr, ajaxOptions, thrownError) { alert(xhr.status); alert(thrownError); } }); });
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda