JSFiddle - React, Tailwind, and code Playground
by juErik
HTML
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<textarea id="pan3_Grm" placeholder="Grammatik ...">Dies ist ein Test - maker ein Teil</textarea>
<button id="saveGrm">Save Grm</button>
JavaScript
$('#saveGrm').click(function(){
insert_code('pan3_Grm','<b>','</b>');
//alert('jj');
}); // ------------------------
function insert_code(id,tag1,tag2) {
var input = document.getElementById(id);
input.focus();
if (typeof document.selection != 'undefined') {
var range = document.selection.createRange();
var insText = range.text;
range.text = tag1 + insText + tag2;
range = document.selection.createRange();
if (insText.length == 0) { range.move('character', -tag2.length); }
else { range.moveStart('character', tag1.length + insText.length + tag2.length); }
range.select();
}else if (typeof input.selectionStart != 'undefined') {
var start = input.selectionStart;
var end = input.selectionEnd;
var insText = input.value.substring(start, end);
input.value = input.value.substr(0, start) + tag1 + insText + tag2 + input.value.substr(end);
var pos;
if (insText.length == 0) { pos = start + tag1.length; }
else { pos = start + tag1.length + insText.length + tag2.length; }
input.selectionStart = pos;
input.selectionEnd = pos;
}else{
var pos;
var re = new RegExp('^[0-9]{0,3}$');
while (!re.test(pos)) { pos = prompt("EinfĂĽgen an Position (0.." + input.value.length + "):", "0"); }
if (pos > input.value.length) { pos = input.value.length; }
var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
input.value = input.value.substr(0, pos) + tag1 + insText + tag2 + input.value.substr(pos);
}
} // --------------- :insert_code(id,tag1,tag2)