Skip to content

Instantly share code, notes, and snippets.

@bdogan
Created April 26, 2017 14:46
Show Gist options
  • Save bdogan/c538df3f59664cb99e3da512401442a8 to your computer and use it in GitHub Desktop.
Save bdogan/c538df3f59664cb99e3da512401442a8 to your computer and use it in GitHub Desktop.
Pattern Input
let pattern = "[a-zöçşiğü]*";
let oldValue = "";
let oldPosition = 0;
document.getElementById("#test").addEventListener('keydown', function(event) {
oldPosition = event.target.selectionStart;
oldValue = event.target.value;
});
document.getElementById("#test").addEventListener('input', function(event) {
let parts = event.target.value.match(new RegExp(pattern, "gi"));
event.target.value = parts ? parts.join("") : "";
if (oldValue != event.target.value) oldPosition = oldPosition + 1;
event.target.setSelectionRange(oldPosition, oldPosition);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment