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

103
Vistas
How to search different digits in numbers

I have a function which split the input value on space and I looped through to search them in a number but only the last value is shown (checked) not the other before it .

One solution can be by removing else that way it worked fine but this way when changing the value the checked number remain intact(last searched result are also shown).

let SearchingNumbers_btn = document.getElementById('SearchingNumbers_btn');
SearchingNumbers_btn.addEventListener("click", refree);

function refree() {
  var reader = document.getElementsByClassName("checkbox_inputs")
  for (let i = 0; i < reader.length; i++) {
    var readerText = reader[i].value
    var readerText1 = readerText.trim()
    var reed = document.getElementById("allNumbers").value;
    var reed1 = reed.trim()
    var myDiffValues = reed1.split(" ");
    document.getElementById("demo").innerHTML = myDiffValues
    if (reed != '') {
      for (var item of myDiffValues) {
        if (readerText1.indexOf(item) > -1) {
          reader[i].checked = true;
        } else {
          reader[i].checked = false;
        }
      }
    } else {
      reader[i].checked = false;
    }
  }
}
<input type="text" name="" id="allNumbers" />
<button id="SearchingNumbers_btn">Select all</button>

<br><br>
<br>

<input class="checkbox_inputs" type="checkbox" name="sending" class="Sending_JS" value="2528" data-u-mobile="2528" />
<span>2528</span>

<input class="checkbox_inputs" type="checkbox" name="sending" class="Sending_JS" value="2529" data-u-mobile="2529" />
<span>2529</span>

<input class="checkbox_inputs" type="checkbox" name="sending" class="Sending_JS" value="2527" data-u-mobile="2527" />
<span>2527</span>

<div id="demo"></div>

One strange behavior it is showing is when lot of space is entered in the input all checkboxes get checked

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

You can make it much more easily :)

Explanation

  1. First of all you read your inputs (checkbox_inputs).
  2. Then you read just once the numbers (allNumbers) and you can trim and split in one line.
  3. Last step: for each one of your checkboxes you set the checked value if the allNumbers list includes the expected value. false otherwise.

Working Example

let SearchingNumbers_btn = document.getElementById('SearchingNumbers_btn');
SearchingNumbers_btn.addEventListener("click", refree);

function refree() {
  var inputs = document.getElementsByClassName("checkbox_inputs");
  var allNumbers = document.getElementById("allNumbers").value.trim().split(" ");
  document.getElementById("demo").innerHTML = allNumbers
  for (let i = 0; i < inputs.length; i++) {
    inputs[i].checked = allNumbers.includes(inputs[i].value);
  }
}
<input type="text" name="" id="allNumbers" />
<button id="SearchingNumbers_btn">Select all</button>

<br><br>
<br>

<input class="checkbox_inputs" type="checkbox" name="sending" class="Sending_JS" value="2528" data-u-mobile="2528" />
<span>2528</span>

<input class="checkbox_inputs" type="checkbox" name="sending" class="Sending_JS" value="2529" data-u-mobile="2529" />
<span>2529</span>

<input class="checkbox_inputs" type="checkbox" name="sending" class="Sending_JS" value="2527" data-u-mobile="2527" />
<span>2527</span>

<div id="demo"></div>

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