Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 14.09.2016, 16:07
Интересующийся
Отправить личное сообщение для mikhael Посмотреть профиль Найти все сообщения от mikhael
 
Регистрация: 11.07.2016
Сообщений: 15

А можно тоже самое реализовать с помощью id элемента.
А то получается, что перед
<input class="form-control form-text form-number" type="text" id="edit-submitted-4otvet" name="submitted[4otvet]" step="1">
есть еще несколько input
Ответить с цитированием
  #12 (permalink)  
Старый 14.09.2016, 16:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

mikhael,
var b = document.querySelectorAll("[id^=edit-submitted]");
Ответить с цитированием
  #13 (permalink)  
Старый 14.09.2016, 16:38
Интересующийся
Отправить личное сообщение для mikhael Посмотреть профиль Найти все сообщения от mikhael
 
Регистрация: 11.07.2016
Сообщений: 15

т.е. чтоб было однозначно в коде с каким из input происходит манипуляция.
edit-submitted-4otvet -> 40
edit-submitted-5otvet -> 25
и т.д.
Ответить с цитированием
  #14 (permalink)  
Старый 14.09.2016, 16:46
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

mikhael,
в коде и так однозначно -- массив сам по себе не изменится -- первое значение для первой пары и тд
Ответить с цитированием
  #15 (permalink)  
Старый 14.09.2016, 16:56
Интересующийся
Отправить личное сообщение для mikhael Посмотреть профиль Найти все сообщения от mikhael
 
Регистрация: 11.07.2016
Сообщений: 15

В том то и дело, что в html коде
<input class="form-control form-text form-number" type="text" id="edit-submitted-4otvet" name="submitted[4otvet]" step="1">
это не первый input, он может быть и 5 и 10.
Ответить с цитированием
  #16 (permalink)  
Старый 14.09.2016, 18:10
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Сообщение от mikhael
это не первый input, он может быть и 5 и 10.
какая разница ....

<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>

  <script>
 window.addEventListener("DOMContentLoaded", function() {
    [{id : 4, r : 40},{id : 8, r : 25}].forEach(function(c) {
        var b = document.querySelector("[id=edit-submitted-"+c.id+"otvet]"),
            a = document.querySelector("[id=edit-submitted-"+c.id+"rez]");
        b.addEventListener("input", function() {
           a.value = +(this.value == c.r)
        })
    })
});
  </script>
</head>

<body>

<form>
<div class="form-item webform-component webform-component-number webform-component--4otvet webform-container-inline form-group form-inline form-item form-item-submitted-4otvet form-type-webform-number form-group"> <label class="control-label" for="edit-submitted-4otvet">Ответ</label>
<input class="form-control form-text form-number" type="text" id="edit-submitted-4otvet" name="submitted[4otvet]" step="1"></div>
<div class="form-item webform-component webform-component-number webform-component--4rez webform-container-inline form-group form-inline form-item form-item-submitted-4rez form-type-webform-number form-group"> <label class="control-label" for="edit-submitted-4rez">4rez</label>
<input class="form-control form-text form-number" type="text" id="edit-submitted-4rez" name="submitted[4rez]" value="0" step="1"></div>
..........
<div class="form-item webform-component webform-component-number webform-component--8otvet webform-container-inline form-group form-inline form-item form-item-submitted-8otvet form-type-webform-number form-group"> <label class="control-label" for="edit-submitted-8otvet">Ответ</label>
<input class="form-control form-text form-number" type="text" id="edit-submitted-8otvet" name="submitted[8otvet]" step="1"></div>
<div class="form-item webform-component webform-component-number webform-component--8rez webform-container-inline form-group form-inline form-item form-item-submitted-8rez form-type-webform-number form-group"> <label class="control-label" for="edit-submitted-8rez">8rez</label>
<input class="form-control form-text form-number" type="text" id="edit-submitted-8rez" name="submitted[8rez]" value="0" step="1"></div>
</form>



</body>
</html>
Ответить с цитированием
  #17 (permalink)  
Старый 14.09.2016, 18:48
Интересующийся
Отправить личное сообщение для mikhael Посмотреть профиль Найти все сообщения от mikhael
 
Регистрация: 11.07.2016
Сообщений: 15

Благодарю, все работает.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Объясните как работет этот код? lexapiter25 jQuery 23 26.05.2016 13:31
Как правильно организовать код? karssen Общие вопросы Javascript 8 13.12.2015 21:47
Как можно сократить код? allanmiln Events/DOM/Window 2 08.02.2013 14:41
Как найти исходный код AS3 внутри FLA файла? Gamestop Flash 7 12.01.2013 13:57
Запуск кода с фрейма, код в родительском окне - КАК ? lamer Javascript под браузер 7 06.05.2012 15:15