Подскажите, как создать кнопку для textarea
Здравствуйте. Подскажите, как создать кнопку для textarea, чтобы при ее нажатии символ появился в textarea? Символ следующий - | создается при комбинации alt +1,2,4.
За ране благодарю. |
<form> <textarea id="input"></textarea> <button type="button" onclick="input.value += '|'">Вставить «|»</button </form> Появляется? Появляется. Все как по заказу. |
Спасибо большое. Можно ли что-то сделать чтобы курсор из формы не исчезал? И символ указанный в кнопке ставился в любом месте где стоит курсор, а не в конце?
|
Ну что-то воде этого:
<form> <textarea id="input"></textarea> <script> var input = document.getElementById('input'); function вставитьПалку() { var value = input.value; var selection = [input.selectionStart, input.selectionEnd]; value = value.substring(0, selection[0]) + '|' + value.substring(selection[1]); input.value = value; input.focus(); input.selectionStart = selection[0] + 1; input.selectionEnd = selection[0] + 1; } </script> <button type="button" onclick="вставитьПалку()">Вставить «|»</button </form> В IE8 не будет работать. |
Ваша форма работает, а в моей где-то ошибка, не могу найти
<form method="post"> <div class="form-group"> <script> function push(but, id, tag) { document.getElementById(id).value += tag; } </script> <textarea name="text" class="form-control" rows="5"> <?= htmlspecialchars($text) ?></textarea><br /> <script> var input = document.getElementById('text'); function text.value += '|' { var value = input.value; var selection = [input.selectionStart, input.selectionEnd]; value = value.substring(0, selection[0]) + '|' + value.substring(selection[1]); input.value = value; input.focus(); input.selectionStart = selection[0] + 1; input.selectionEnd = selection[0] + 1; } </script> <button class="btn btn-default" type="button" onclick="text.value += '|'">Вставить «|»</button></form> |
Цитата:
Посмотри еще раз на мой код (второй вариант), а потом посмотри на свой ) |
Цитата:
|
Это вот от сюда:
[ <button type="button" onclick="input.value += '|'">Вставить «|»</button> Только у вас ID="input", а у меня - text |
Сейчас исправил, но все равно символ вставляет в конце, может из-за первого скрипта?
<form method="post"> <div class="form-group"> <script> function push(but, id, tag) { document.getElementById(id).value += tag; } </script> <textarea name="text" id="input" class="form-control" rows="5"> <?= htmlspecialchars($text) ?></textarea><br /> <script> var input = document.getElementById('input'); function input.value += '|' { var value = input.value; var selection = [input.selectionStart, input.selectionEnd]; value = value.substring(0, selection[0]) + '|' + value.substring(selection[1]); input.value = value; input.focus(); input.selectionStart = selection[0] + 1; input.selectionEnd = selection[0] + 1; } </script><button class="btn btn-default" type="button" onclick="input.value += '|'">Вставить «|»</button></form> |
vladimir003, у тебя провалы в памяти что-ли? Ты уже спрашивал, и я тебе предложил другой код. Пролистай наверх, блин, перечитай ветку.
|
Часовой пояс GMT +3, время: 08:17. |