• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

144
Views
¿Cómo puedo seleccionar dinámicamente el campo de entrada en formularios generados dinámicamente con Javascript/jQuery?

Cuando mi documento está listo, tengo 1 o más formularios idénticos con selección y dos entradas que quiero mostrar (1 de ellos basado en selección dinámica).

Para 1 formulario es bastante simple, pero mi problema es que los formularios se generan dinámicamente como cuando tengo listo 1 formulario de selección de etiqueta que se ve así

 <button type="button" class="add-document-item btn btn-success btn-sm pull-right"> <i class="glyphicon glyphicon-plus"></i> </button> <select id="type" class="form-control"> <option value="1">File 1</option> <option value="2">File 2</option> </select> <div class="col-md-12 system" id="system"> My YII2 active form field... </div> <div class="col-md-12 computer" id="computer"> My YII2 active form field... </div>

Si después de abrir el documento y hay más de 1 formulario O hay uno y agrego más dinámicamente, SELECCIONE la identificación generando como "tipo 0", "tipo 1", "tipo 2" y lo mismo ocurre con las identificaciones de los campos de formulario.

Hasta ahora, solo puedo cambiar las entradas dinámicamente solo cuando se procesa 1 formulario

 $(document).ready(function () { $('#computer').hide(); $(document).on('change', '#type', function () { var val = $('#type').val(); if (val == 2) { $('#system').show(); $('#computer').hide(); } else { $('#computer').show(); $('#system').hide(); } }); });

Mi necesidad es cambiar la entrada seleccionada para cada forma individual generada. Estoy atascado para esto ya por algún tiempo. ¿Alguien puede ayudarme?

almost 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Este javascript que creé debería funcionar. Deberá aplicar esto a su propio código.

  1. Declarar una matriz con todos los elementos del formulario

  2. Seleccione todos los elementos que va a recorrer

  3. Use forEach y sobrecárguelo con la matriz que creó

  4. Cree una declaración if con el conjunto de filtros correcto

     myArray = document.querySelectorAll('form') document.querySelectorAll('form').forEach(function(value, index, myArray){ if (myArray[index].getAttribute('id')=='system'){ console.log('system') //doSomething() } })

Puede refactorizar esto reemplazando la segunda instancia de document.querySelectorAll('form') con myArray, pero para mayor claridad lo dejaré como está.

almost 3 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 Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error