Подскажите, как создать кнопку для 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, время: 16:38. |