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

107
Vistas
Ajax funcional en la selección de categorías.

Todavía estoy muy débil en el Ajax, pero me dijeron que esta es una salida a la situación que he desarrollado.

Tengo una función javascript que filtra categorías. También hay alternancia de listas en php.blade.

Cuando hago clic en "Todos", se muestran todos los blogs y la alternancia funciona correctamente. Cuando selecciono la "categoría deseada", se muestran todos los blogs de esta categoría, pero la alternancia no funciona.

Se me indicó que puede llamar a un ajax funcional en la selección de categoría y devolver la respuesta HTML en esa llamada ajax. Pero no sé cómo hacer esto, ¿alguien puede ayudarme?

JavaScript

 $('.category-filter_item').click(function(){ $('.category-filter_item').removeClass('active') $(this).addClass('active') var dataFilter = $(this).attr('data-filter'); $('.blog-list').hide() $(dataFilter).show() })

php.blade

 @extends('layouts.app') @section('content') <div class="container"> <div class="category-filter" id="filter"> <div class="category-filter_item active" data-filter="*">All</div> @foreach($categories as $category) <div class="category-filter_item" data-filter=".category_{{$category->id}}">{{ $category->title }}</div> @endforeach </div> @foreach ($blogs as $index => $blog) <div class="blog-list"> @if ($index % 2 === 1) //Alternation <div class="blog blog--left" > <h2 class="blog_title">{{ $blog->title }}</h2> </div> @else <div class="blog blog--right"> <h2 class="blog_title">{{ $blog->title }}</h2> </div> @endif </div> @endforeach </div> @endsection

Controlador

 public function index() { $blogs = Blog::all(); $categories = Category:all(); return view('blog', compact('blogs', 'categories')); }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Necesita crear una nueva función de ruta y controlador para devolver solo los blogs de categoría seleccionados y eso debería estar en formato json

Una vez hecho esto, debe usar la llamada ajax a la ruta anterior en la función de clic definida. Capture la respuesta y luego itere y genere el html que debería estar dentro de la blog-list en su secuencia de comandos. luego actualice el html dentro del valor blog-list .

consulte este enlace

consulte esto para hacer un enlace de llamada ajax

about 4 years ago · Juan Pablo Isaza 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