Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

381
Views
When I change the filter, all values change. I would like only the value of the 'block-value' HTML to change

I try to display valueToday[1] for my second element 'block-value' and i try to display valueToday[0] for my first element 'block-value'. But divs[i].querySelector(class).style.display = "" is not working My filter called for each element :

let values = document.querySelectorAll('.value-h6');
let valueToday = document.querySelectorAll('.value-today');
let valueMonth = document.querySelectorAll('.value-month');
let valueYear = document.querySelectorAll('.value-year');
let divs = document.querySelectorAll('block-value');

function init() {
  // Clear data
  for (let i = 0; i < values.length; i++) {
    values[i].style.display = "none";
  }
  for (let i = 0; i < valueToday.length; i++) {
    valueToday[i].style.display = 'block';
  }
}
// user is coming, the default value is the dailyValue
init();

function today() {
  init();
}

function month() {
  for (let i = 0; i < values.length; i++) {
    values[i].style.display = "none";
  }
  for (let i = 0; i < valueMonth.length; i++) {
    valueMonth[i].style.display = 'block';
  }
}

function year() {
  for (let i = 0; i < values.length; i++) {
    values[i].style.display = "none";
  }
  for (let i = 0; i < valueYear.length; i++) {
    valueYear[i].style.display = 'block';
  }
}
<div class="ps-3 block-value" id="0">
  <h6 class="value-h6 value-today">23%</h6>
  <h6 class="value-h6 value-month">24%</h6>
  <h6 class="value-h6 value-year">25%</h6>
</div>

<div class="ps-3 block-value" id="1">
  <h6 class="value-h6 value-today">300</h6>
  <h6 class="value-h6 value-month">34</h6>
  <h6 class="value-h6 value-year">23</h6>
</div>

<li><button class="dropdown-item filter-btn filter-auj" onclick="today()">Aujourd'hui</button></li>
<li><button class="dropdown-item filter-btn filter-mois" onclick="month()">Ce mois</button></li>
<li><button class="dropdown-item filter-btn filter-annee" onclick="year()">Cette année</button></li>

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Try display = 'none' (https://www.w3schools.com/jsref/prop_style_display.asp#:~:text=The%20display%20property%20also%20allows,its%20original%20position%20and%20size.) W3schools has excellent documentation for these things ;-)

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!