Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

84
Visualizações
Función Loop onchange para manipular el nombre de la clase de destino

Usé php y jquery. Tengo que generar una etiqueta de selección múltiple dependiendo del valor de la condición. Necesito manipular tanto html, php y jquery usando loop pero no puedo encontrar la respuesta para que esto funcione.

código php html ... Me gusta completar varias etiquetas de selección con diferentes nombres de clase

 <?php $count = 2; ?> <div id="comments" hidden><?php echo htmlspecialchars($count); ?></div> <?php for($i = 1; $i <= $count; $i++){ ?> <input type="text" readonly="readonly" class="resone<?php echo $i; ?>" id="resone"> <select name="artist_1" class="part<?php echo $i; ?>" id="part"> <option value="" disabled selected>Select Category</option> <option value="1">medicine</option> <option value="2">shoes</option> </select> <?php }?>

jquery Me gusta poner la función onchange en el ciclo para manipular el valor de la clase objetivo

 <script> $(function() { var count = document.getElementById("comments").textContent; for (var i = 1; i <= count; i++) { $('.part' + i).change(function() { var display = $('.part' + i).find(":selected").val(); $('.resone' + i).val(display); }) } }) </script>

Espero que me puedas ayudar con esto.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Está complicando demasiado las cosas y abusando de la clase al agregarle un contador.

Aquí está mi sugerencia: en realidad puede ignorar las ID y el script no se preocupa por el conteo, solo por la cantidad de ".part" que hay

 $(function() { $(".part").on("change", function() { $(this).prev(".resone").val(this.value); }) })
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type="text" readonly="readonly" class="resone" id="resone0"> <select name="artist_1" class="part" id="part0"> <option value="" disabled selected>Select Category</option> <option value="1">medicine</option> <option value="2">shoes</option> </select> <hr/> <input type="text" readonly="readonly" class="resone" id="resone1"> <select name="artist_1" class="part" id="part1"> <option value="" disabled selected>Select Category</option> <option value="1">medicine</option> <option value="2">shoes</option> </select>

PHP: - las ID ni siquiera se usan

 <?php for($i = 1; $i <= $count; $i++){ ?> <input type="text" readonly="readonly" class="resone" id="resone<?php echo $i; ?>"> <select name="artist_1" class="part" id="part<?php echo $i; ?>"> <option value="" disabled selected>Select Category</option> <option value="1">medicine</option> <option value="2">shoes</option> </select> <?php }?>
about 4 years ago · Juan Pablo Isaza Relatório

0

No necesita usar un bucle for, solo asigne a la selección una clase común y haga lo siguiente:

 $(function() { $('.part').change(function() { var display = $(this).val(); $(this).next('.resone').val(display); }) })

Como no puedo ver el elemento con la clase resone , no puedo asegurarme de que $(this).next('.resone').val(display) funcione.

ejemplo de código

 $(function() { $('.part').change(function() { var display = $(this).val(); $(this).next('.resone').val(display); }) })
 <?php $count = 2; ?> <div id="comments" hidden> <?php echo htmlspecialchars($count); ?> </div> <?php for($i = 1; $i <= $count; $i++){ ?> <select name="artist_1" class="part" > <option value="" disabled selected>Select Category</option> <option value="1">medicine</option> <option value="2">shoes</option> </select> <?php }?>

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda