@ReytexGames

Как изменить placeholder при нажатии на переключатель (radio)?

Как изменить placeholder на определённый текст, при нажатии на переключатель (radio)?
5feb751d0075c664255298.png
<body>
  <form>
   <p><b>Выберите платёжную систему</b></p>
    <p><input name="method" type="radio" id="item1" value="qiwi" checked>Qiwi</p>
    <p><input name="method" type="radio" id="item2" value="ym">ЮMoney</p>
    <p><input name="method" type="radio" id="item3" value="wm">Webmoney</p>
    <p><input name="method" type="radio" id="item4" value="card">Карта</p>
    
    <input type="text" name="wallet" value="" required placeholder="79181234567"/>
    <small>Введите ваши реквизиты.</small>
  </form> 
 </body>
  • Вопрос задан
  • 50 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Радиокнопкам добавляете data-атрибут, который будет содержать значение для плейсхолдера:

<input type="radio" name="xxx" data-placeholder="hello, world!!">
<input type="radio" name="xxx" data-placeholder="fuck the world">
<input type="radio" name="xxx" data-placeholder="fuck everything">

Достаёте это значение, когда у формы случается событие change, имеющее своим источником радиокнопку, назначаете его текстовому полю:

document.querySelector('form').addEventListener('change', function({ target: t }) {
  if (t.type === 'radio') {
    this.querySelector('input[type="text"]').placeholder = t.dataset.placeholder;
  }
});

https://jsfiddle.net/b4zdjukq/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
Intspirit Краснодар
от 80 000 до 150 000 ₽