
Filtrar array según opciones de varios input select
Publicado por Maritn (1 intervención) el 19/08/2022 01:27:53
Buenas tardes amigos,
Tengo el siguiente problema, estoy creando la pagina web para un amigo y me encuentro con el siguiente problema. La pagina es del tipo ecommerce, cuando el cliente entra debe ver todos los inmuebles, hasta ahí voy bien, el problema surge a la hora de filtrar el listado de inmuebles según un combo de filtros que tiene disponibles y paso a mostrar un ejemplo:
Input 1:
Categoría:
<select class="form-select" id="filterCategory">
<option value="0">Categoria</option>
<option value="Ventas" selected>Ventas</option>
<option value="Alquileres">Alquileres</option>
<option value="AlquilerTemporal">Alquiler temporal</option>
</select>
Input 2
Tipo
<select class="form-select" id="filterType">
<option value="0" selected>Tipo</option>
<option value="Apartamento">Apartamento</option>
<option value="Casa">Casa</option>
<option value="LocalComercial">Local Comercial</option>
<option value="Terreno">Terreno</option>
</select>
Input 3:
Departamento
<select class="form-select" id="filterDepartament">
<option value="0" selected>Departamento</option>
<option value="Colonia">Colonia</option>
<option value="Maldonado">Maldonado</option>
<option value="Montevideo">Montevideo</option>
<option value="Paysandú">Paysandú</option>
</select>
La idea es que la búsqueda sea exacta o parcial, por ejemplo, si el cliente quiere filtrar inmuebles solo de la categoría Alquiler, que traiga todos los alquileres, si selecciona inmuebles solo del tipo Apartamento, que traiga todos los apartamento, pero que si selecciona la categoría Alquiler y que sean de tipo Apartamento, que solo traiga los Apartamentos que estén para alquilar.
Probé un montón de métodos, filter, push, map, para crear un array de filtros y luego compararlos, pero no identifico en donde pueda estar errando, ya que si guardo los valores en una variable por consola el resultado es undefined o el array esta vacío, aunque si por consola busco por ejemplo el id filterDepartament me muestra el valor de la opción seleccionada sin problemas.
Realmente no se a que mas recurrir.. Agradezco si alguien puede darme una ayuda.
Tengo el siguiente problema, estoy creando la pagina web para un amigo y me encuentro con el siguiente problema. La pagina es del tipo ecommerce, cuando el cliente entra debe ver todos los inmuebles, hasta ahí voy bien, el problema surge a la hora de filtrar el listado de inmuebles según un combo de filtros que tiene disponibles y paso a mostrar un ejemplo:
Input 1:
Categoría:
<select class="form-select" id="filterCategory">
<option value="0">Categoria</option>
<option value="Ventas" selected>Ventas</option>
<option value="Alquileres">Alquileres</option>
<option value="AlquilerTemporal">Alquiler temporal</option>
</select>
Input 2
Tipo
<select class="form-select" id="filterType">
<option value="0" selected>Tipo</option>
<option value="Apartamento">Apartamento</option>
<option value="Casa">Casa</option>
<option value="LocalComercial">Local Comercial</option>
<option value="Terreno">Terreno</option>
</select>
Input 3:
Departamento
<select class="form-select" id="filterDepartament">
<option value="0" selected>Departamento</option>
<option value="Colonia">Colonia</option>
<option value="Maldonado">Maldonado</option>
<option value="Montevideo">Montevideo</option>
<option value="Paysandú">Paysandú</option>
</select>
La idea es que la búsqueda sea exacta o parcial, por ejemplo, si el cliente quiere filtrar inmuebles solo de la categoría Alquiler, que traiga todos los alquileres, si selecciona inmuebles solo del tipo Apartamento, que traiga todos los apartamento, pero que si selecciona la categoría Alquiler y que sean de tipo Apartamento, que solo traiga los Apartamentos que estén para alquilar.
Probé un montón de métodos, filter, push, map, para crear un array de filtros y luego compararlos, pero no identifico en donde pueda estar errando, ya que si guardo los valores en una variable por consola el resultado es undefined o el array esta vacío, aunque si por consola busco por ejemplo el id filterDepartament me muestra el valor de la opción seleccionada sin problemas.
Realmente no se a que mas recurrir.. Agradezco si alguien puede darme una ayuda.
Valora esta pregunta


0