Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Одновременное заполнение всех полей (https://javascript.ru/forum/misc/73335-odnovremennoe-zapolnenie-vsekh-polejj.html)

valdemariuses 07.04.2018 11:46

Одновременное заполнение всех полей
 
Приветствую.
Подскажите пожалуйста, как сделать, чтобы при вводе информации в одном input, во все другие input с одним id проставлялась одна и та же информация.
<input onkeyup="checkParams();" id="osn_opti_special">
			
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">

<script>
function checkParams() {
    var name = $('#osn_opti_special').val();
     
    document.getElementById('opti_special').value=name 
}
</script>

Malleys 07.04.2018 14:05

Вместо id нужно class. id только для одного элемента (уникальное имя), class для семейства элементов(типа фамилия)

<input oninput="checkParams();" id="osn_opti_special">
			
<input class="opti_special">
<input class="opti_special">
<input class="opti_special">
<input class="opti_special">
<input class="opti_special">
<input class="opti_special">
<input class="opti_special">
<input class="opti_special">


<script>
function checkParams() {
    var name = document.getElementById('osn_opti_special').value;
     
    document.querySelectorAll('.opti_special').forEach(function(input) {
      input.value = name;
    });
}
</script>
<style>
input { display: block; }
input:first-child { margin-bottom: 1em; }
</style>

j0hnik 07.04.2018 14:14

Можно так
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
<input oninput="checkParams();" id="osn_opti_special">
			
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">
<input id="opti_special">


<script>
function checkParams() {
    var name = document.getElementById('osn_opti_special').value;
     
    document.querySelectorAll('[id="opti_special"]').forEach(function(input) {
      input.value = name;
    });
}
</script>
<style>
input { display: block; }
input:first-child { margin-bottom: 1em; }
</style>

</script>
</body>
</html>


Но правильней будет конечно же с class

valdemariuses 07.04.2018 19:50

Спасибо!


Часовой пояс GMT +3, время: 05:09.