День добрый.Второй день мучаюсь с проблемой получения выделенного текста.В интернете очень много примеров,но...
Они либо для текстовых областей,либо если и инпут и текстареа то событие вешается на body.Вот пример ниже.Хотелось бы сделать получение при нажатии на кнопку,но все варианты сводятся сначала получить id нужного элемента textarea input и только уже потом делать что-то,а есть ли возможность сделать чтобы получение выделенного текста в текстовой области и в текстареа были одинаковые?(без получения ид)
вот код(он работает)
<script type="text/javascript">
function GetSelectedText () {
var selText = "";
var daE = document.activeElement;
if (window.getSelection) { // all browsers, except IE before version 9
if (daE && (daE.tagName.toLowerCase () == "textarea" || daE.tagName.toLowerCase () == "input")) {
var text = daE.value;
selText = text.substring (daE.selectionStart, daE.selectionEnd);
}
else {
var selRange = window.getSelection ();
selText = selRange.toString ();
}
}
else {
if (document.selection.createRange) { // Internet Explorer
var range = document.selection.createRange ();
selText = range.text;
}
}
if (selText !== "") {
alert (selText);
}
}
function clearSelection() {
try {
// современный объект Selection
window.getSelection().removeAllRanges();
} catch (e) {
// для IE8-
document.selection.empty();
}
}
</script>
</head>
<body onmouseup="GetSelectedText ()">
Some text for selection.
<br /><br />
<textarea>Some text in a textarea element.</textarea>
<input type="text" value="Some text in an input field." size="40"/>
<br /><br />
Select some content on this page!
<input type="submit" value="Отправить" >
<input type="submit" value="Удалить" onclick="clearSelection()">
</body>