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

147
Views
jquery ocultar casilla de verificación basada en fechas

desarrolladores necesito ayuda con jQuery. Tengo una lista de casillas de verificación y solo quiero que se muestren ciertas casillas de verificación en la página. Actualmente, Mi código muestra solo la casilla de verificación de la fecha actual, pero necesito más controles. Esto es lo que quiero

  • obtener la fecha de hoy de hoy
  • ocultar cualquier opción de casilla de verificación que sea anterior a la fecha de hoy
  • solo elija 1 fecha que sea la próxima fecha posible después de hoy (o la fecha de hoy)
  • luego oculta todas las demás casillas de verificación

A continuación se muestra mi enfoque, pero no dude en ayudarme a su manera/código. No es necesario que vayas necesariamente con mi código.

 $('[data-fieldlabel=\'Date and Price\'] span').each(function() { const date = new Date(); const today = (date.getMonth() + 1) + '/' + date.getDate() + '/' + date.getFullYear().toString().slice(-2); const currentDateEl = $(this).find('.check-box-label').text(); if (!currentDateEl.startsWith(today)) { $(this).hide(); } });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <div class="checkbox-group" data-fieldlabel="Date and Price"> <span class="checkbox custom-checkbox custom-check-box"> <input id="field_13646002_25035125" type="checkbox"/> <label class="check-box-label" for="field_13646002_25035125">10/9/21 - 8.50</label> </span> <span class="checkbox custom-checkbox custom-check-box"> <input id="field_13646002_25035126" type="checkbox"/> <label class="check-box-label" for="field_13646002_25035126">10/16/21 - 2.00</label> </span> <span class="checkbox custom-checkbox custom-check-box"> <input id="field_13646002_25035126" type="checkbox"/> <label class="check-box-label" for="field_13646002_25035126">10/28/21 - 3.00</label> </span> </div>

Necesito una verificación más. Si no tengo la fecha actual (quiero mostrar una fecha futura más cercana), digamos que la fecha de hoy es el 28/10/21, pero tengo la etiqueta debajo

 <label class="check-box-label" for="field_13646002_25035126">10/27/21 - 3.00</label> <label class="check-box-label" for="field_13646002_25035126">10/29/21 - 3.00</label> <label class="check-box-label" for="field_13646002_25035126">10/30/21 - 3.00</label>

Ahora quiero mostrar solo estos datos futuros más cercanos <label class="check-box-label" for="field_13646002_25035126">10/29/21 - 3.00</label>

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

0

El siguiente código puede ser lo que necesita:

 let now=new Date(); now.setHours(0); now.setMinutes(0); now.setSeconds(0); let nowTime=now.getTime(); let items=$('[data-fieldlabel=\'Date and Price\'] span'); let index=-1; for (let i=0;i<items.length;i++){ let theDate=($(items[i]).find('.check-box-label').text()).split(" ")[0]; let theDateObj=new Date(theDate); let diff=theDateObj.getTime()-nowTime; if (diff>=0){ if (index==-1){ index=i; break; } } } for (let i=0;i<items.length;i++){ if (i!=index){ $(items[i]).hide(); } }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="checkbox-group" data-fieldlabel="Date and Price"> <span class="checkbox custom-checkbox custom-check-box"> <input id="field_13646002_25035126" type="checkbox" /> <label class="check-box-label" for="field_13646002_25035126">10/29/21 - 3.00</label> </span> <span class="checkbox custom-checkbox custom-check-box"> <input id="field_13646002_25035126" type="checkbox" /> <label class="check-box-label" for="field_13646002_25035126">10/30/21 - 3.00</label> </span> <span class="checkbox custom-checkbox custom-check-box"> <input id="field_13646002_25035126" type="checkbox" /> <label class="check-box-label" for="field_13646002_25035126">10/28/21 - 3.00</label> </span> </div>

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!