как добавить текст в текстовое поле и нажать энтер джаваскриптом?
как добавить текст в текстовое поле и нажать энтер джаваскриптом?
<textarea aria-label="Добавьте комментарий..." class="_bilrf" placeholder="Добавьте комментарий..." style="height: 18px;">cc</textarea> |
денис77447327,
Возможно достаточно поместить textarea в форму и сабмитить ее по клику? |
а конкретнее? я что то не пойму
|
var field = document.querySelector('textarea._bilrf'); field.value = 'Bla bla bla'; field.form.submit(); |
не работает
он обновляет страницу текст появляется в текстарреа но после field.form.submit(); идет не отрпавка его а обновление |
Цитата:
|
MadChildNSK,
Цитата:
|
MadChildNSK,
программное нажатие может не оправдать ваши ожидания. |
нет кнопки отправить текст отправляется по нажатию энтер
|
О форме с единственным textarea
В многострочном textarea использование в качестве сигнала отправки формы копки Enter⏎ не позволяет использовать этот самый многострочный ввод... Обычно для этой цели на настольном компьютере с клавиатурой или ноутбуке используют Cmd+Enter, но тогда пользователи сенсорных устройств не смогут отправить такую форму. Т. е. *дополнительная* кнопка для отправки нужна, поскольку тогда пользователи знают, какое они совершат действие с введённым текстом. (По крайней мере у них не сложится впечатление, что достаточно ввести текст...) Также пользователи, которые привыкли к удобному заполнению форм, введя текст, смогут нажать Tab⭾ и сфокусировавшись на кнопке, нажать на Enter⏎ Пользователи сенсорных устройств всё-таки смогут отправить форму, нажав на кнопку. Ну и пример. Форма с единственным textarea. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Пример формы с многострочным вводом</title> <meta name="viewport" content="width=device-width"> <style> button, form, textarea { color: deepskyblue; border: 1px solid; background: transparent; border-radius: 1em; padding: 0; font: inherit; display: inline-block; box-sizing: border-box; padding: .5em 1em; outline: 0; } button:focus, form:focus, textarea:focus { box-shadow: 0 0 0 .1em, 0 0 1em; } form { position: relative; min-width: 100%; padding: 0; } button { position: absolute; bottom: .5em; right: .5em; } textarea { width: 100%; height: 100%; display: block; border: none; min-height: 8em; resize: vertical; } </style> </head> <body> <form onsubmit="submitHandler(this); return false;"> <textarea onkeydown="submitForm(this.form);" title="Нажмите ⌘⏎ или ⌃⏎ чтобы отправить" placeholder="Введите Ваш комментарии..." ></textarea> <button>Отправить</button> </form> <script> function submitForm(form) { if( (event.ctrlKey || event.metaKey) && event.keyCode === 13 ) { submitHandler(form); } } function submitHandler(form) { // действие, которое совершается при отправке формы alert(form.elements[0].value); } </script> </body> </html> Выводы: 1. ⏎ для перевода строки, ⌘⏎ или ⌃⏎ чтобы отправить 2. кнопка нужна: ⭾⏎ чтобы отправить; явно нажать |
Часовой пояс GMT +3, время: 06:32. |