JSFiddle - React, Tailwind, and code Playground
by mark69_fnd
HTML
<input type='text' value='0123456789'/>
<button id='m1'>Method 1</button>
<button id='m2'>Method 2</button>
JavaScript
YUI().use("node",
function(Y) {
var inputNode = Y.one('input');
function createSelection(domNode, start, end) {
domNode.focus();
if (domNode.createTextRange) {
var selRange = domNode.createTextRange();
selRange.collapse(true);
selRange.moveStart('character', start);
selRange.moveEnd('character', end);
selRange.select();
} else if (domNode.setSelectionRange) {
domNode.setSelectionRange(start, end);
} else if (domNode.selectionStart !== undefined) {
domNode.selectionStart = start;
domNode.selectionEnd = end;
}
}
Y.one('#m1').on('click', function() {
inputNode.focus();
inputNode.set("selectionStart", 3);
inputNode.set("selectionEnd", 7);
});
Y.one('#m2').on('click', function() {
inputNode.focus();
createSelection(inputNode.getDOMNode(), 3, 7);
});
});