Ваша форма работает, а в моей где-то ошибка, не могу найти
<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>