HTML:
<textarea id="text"></textarea>
JavaScript:
document.querySelector('#text').addEventListener('keydown', e => {
if (e.keyCode == 9) e.preventDefault();
});
Are you able to still write a tab without unfocusing the textarea?
HTML:
<textarea id="text"></textarea>
JavaScript:
document.querySelector('#text').addEventListener('keydown', e => {
if (e.keyCode == 9) e.preventDefault();
});
Are you able to still write a tab without unfocusing the textarea?
Add spaces to the end when tab is hit:
document.querySelector('#text').addEventListener('keydown', e => {
if (e.keyCode == 9) {
e.preventDefault();
document.querySelector('#text').value += " ";
}
});
Edit: Worked on inserting spaces and I think this works:
<textarea id="text"></textarea>
document.querySelector('#text').addEventListener('keydown', e => {
if (e.keyCode == 9) {
e.preventDefault();
var ele = document.querySelector('#text');
var caretPos = ele.selectionStart;
var textAreaTxt = ele.value;
var txtToAdd = " ";
ele.value = textAreaTxt.substring(0, caretPos)
+ txtToAdd
+ textAreaTxt.substring(caretPos);
ele.selectionStart = caretPos + 4;
ele.selectionEnd = caretPos + 4;
}
});
With help from https://stackoverflow.com/a/15977052/1171702 and a general search for js add spaces at cursor position
.