Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вставка в texarea из input (https://javascript.ru/forum/misc/51198-vstavka-v-texarea-iz-input.html)

qwe88 28.10.2014 11:36

Вставка в texarea из input
 
Добрый день!
Есть скрипт подстановки данных в textarea из инпутов.
Помогите, пожалуйста, сделать так, что бы данные брались не из input, а из select.
Пробовал заменить querySelectorAll("input"); на querySelectorAll("select");
Но безуспешно

Код:

<script>
  var template = function (name1, name2) {
    return "Здравствуйте " + name1 + "! Ваш(-а) друг (подруга) " + name2 + " сделал(-а) вам подарок - 500 рублей на лазерную эпиляцию.";
  }

  var inputs = document.querySelectorAll("input");
  var change = function () {
      document.querySelector("textarea").innerHTML = template(inputs[0].value, inputs[1].value);
  }
  inputs[0].addEventListener("change", change, true);
  inputs[1].addEventListener("change", change, true);
  </script>


ksa 28.10.2014 11:51

Цитата:

Сообщение от qwe88
Помогите, пожалуйста

Для начала тестовый пример нормальный сделай...

qwe88 28.10.2014 12:47

Код:

<form action="?send" method="post">

<input type="text" class="name1">
<br />
<input type="text" class="name2">
<br />

<br />
<textarea class="skrit" cols="60" rows="6" name="sms"></textarea>

<br />
<input class="otprav" type="submit" value="Отправить" />
</form>
<script>
  var template = function (name1, name2) {
    return "Здравствуйте " + name1 + "! Ваш(-а) друг (подруга) " + name2 + " сделал(-а) вам подарок - 500 рублей на лазерную эпиляцию. ";
  }

  var inputs = document.querySelectorAll("input");
  var change = function () {
      document.querySelector("textarea").innerHTML = template(inputs[0].value, inputs[1].value);
  }
  inputs[0].addEventListener("change", change, true);
  inputs[1].addEventListener("change", change, true);
  </script>


ksa 28.10.2014 14:36

Цитата:

Сообщение от qwe88
что бы данные брались не из input, а из select

Селектов так и не увидел... :cray:

qwe88 28.10.2014 14:38

Код:

<form action="?send" method="post">

<select name="name1">
<option>Позиция 1</option>
<option>Позиция 2</option>
<option>Позиция 3</option>
</select>
<br />
<input type="text" class="name2">
<br />

<br />
<textarea class="skrit" cols="60" rows="6" name="sms"></textarea>

<br />
<input class="otprav" type="submit" value="Отправить" />
</form>
<script>
  var template = function (name1, name2) {
    return "Здравствуйте " + name1 + "! Ваш(-а) друг (подруга) " + name2 + " сделал(-а) вам подарок - 500 рублей на лазерную эпиляцию. ";
  }

  var inputs = document.querySelectorAll("input");
  var change = function () {
      document.querySelector("textarea").innerHTML = template(inputs[0].value, inputs[1].value);
  }
  inputs[0].addEventListener("change", change, true);
  inputs[1].addEventListener("change", change, true);
  </script>


ksa 28.10.2014 14:44

Говнокод конечно еще тот...

Дай ключевым элементам уникальные ИД. Т.о. пофиг откуда брать инпут или селект...

var val=document.getElementById(<id_элемента>).value;


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