Как добавить динамический идентификатор в текстовые поля без необходимости помещать текстовые поля в цикл?
Я пытаюсь присвоить идентификаторы некоторым текстовым полям, которые создаются динамически в цикле. И после того, как серия текстовых полей будет создана, я хочу вызвать функцию на главном текстовом поле, которая отражает данные, введенные в одно текстовое поле, во все другие текстовые поля.
*Главное текстовое поле, в которое будет введено значение*
<input class="form-control" type="text" name="add" id="add" onkeyup="sync()">
*скрипт для отражения данных во всех текстовых полях, введенных в основное текстовое поле*
function sync() { var n1 = document.getElementById('add0'); var n2 = document.getElementById('add1'); var n3 = document.getElementById('add2'); var n4 = document.getElementById('add3'); var n5 = document.getElementById('add4'); var n6 = document.getElementById('add5'); var n7 = document.getElementById('add6'); var n8 = document.getElementById('add7'); n8.value = n7.value = n6.value = n5.value = n4.value = n3.value = n2.value = n1.value; }
*Div, который находится в цикле, состоящем из текстовых полей, в которых данные будут отражаться из основного текстового поля*
<?php while($res = pg_fetch_assoc($result)){ ?> <div class="col-md-2 show-hide"> <input type="text" value="<?php echo $res['size']; ?> " readonly style="background-color: #F5F5F5;" class="form-control"/> <div id="addition"></div> <--- OUTPUT IS SUPPOSED TO BE GENERATED HERE <select class="form-control"> <option>25%</option> <option>50%</option> <option>100%</option> </select><br> </div><?php }?>
Что я уже пробовал:
*script for assigning dynamic id's* <pre>for( var i=0; i<8; i++) //i<9 because that's the maximum number of text //fields to be created is 8. { $('#addition').append('<input class="form-control" type="text" name="add" id="add'+ i +'" />'); }
Проблема в том, что этот скрипт прекрасно работает в скрипке, но выходные данные не генерируются в реальной программе. И когда я использую скрипт внутри цикла в реальной программе, он создает серию текстовых полей только в первой итерации цикла while.
Есть ли способ только динамически создавать идентификаторы и добавлять их в область ввода, вместо того чтобы помещать сам ввод в цикл, как это сделал я?