Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.01.2013, 16:22
Новичок на форуме
Отправить личное сообщение для settype Посмотреть профиль Найти все сообщения от settype
 
Регистрация: 15.01.2013
Сообщений: 5

Событие onselect
Добрый день.
У меня такой вопрос:
- например есть текст
<textarea>несколько слов</textarea>

можно-ли при выделении слова "слов" (на <textarea> подвешен обработчик события select), получить это слово для дальнейшей обработки(например для отправки его на сервер с помощью AJAX).
Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 15.01.2013, 16:31
Аватар для zilker
Профессор
Отправить личное сообщение для zilker Посмотреть профиль Найти все сообщения от zilker
 
Регистрация: 30.07.2011
Сообщений: 189

text = window.getSelection().toString() - для нормальных
text = document.selection.createRange().text - для IE
Ответить с цитированием
  #3 (permalink)  
Старый 15.01.2013, 18:21
Новичок на форуме
Отправить личное сообщение для settype Посмотреть профиль Найти все сообщения от settype
 
Регистрация: 15.01.2013
Сообщений: 5

alert "выбрасывает" но он пустой.
Ответить с цитированием
  #4 (permalink)  
Старый 15.01.2013, 18:28
Новичок на форуме
Отправить личное сообщение для settype Посмотреть профиль Найти все сообщения от settype
 
Регистрация: 15.01.2013
Сообщений: 5

В смысле через alert пытаюсь вывести выделенный фрагмент.
Ответить с цитированием
  #5 (permalink)  
Старый 15.01.2013, 18:52
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

settype,
получаем-пользовательское-выделение
Ответить с цитированием
  #6 (permalink)  
Старый 15.01.2013, 19:04
Аватар для zilker
Профессор
Отправить личное сообщение для zilker Посмотреть профиль Найти все сообщения от zilker
 
Регистрация: 30.07.2011
Сообщений: 189

alert(window.getSelection().toString())

у вас не выводит?
А вообще рони вам правильную ссылку дал
Ответить с цитированием
  #7 (permalink)  
Старый 15.01.2013, 19:58
Новичок на форуме
Отправить личное сообщение для settype Посмотреть профиль Найти все сообщения от settype
 
Регистрация: 15.01.2013
Сообщений: 5

Честно говоря не понимаю, наверное опыта маловато, извините.

Вот код:
<html>
<head>
	<meta http-equiv="content-type" content="text/html;charset=utf-8">
</head>
<body>

<form>
  <textarea  onselect='s()'>Время на сайте</textarea>
  <input type='text' value='fdghfh' onclick='s()'/>
  <input type="button" onclick="s()" value="Вывести выделенный фрагмент"/>
</form>
<p onclick='s()'>yiogyotyiotyuo</p>

<script>
/*function s(){
  if(window.getSelection)
     txt = window.getSelection().toString();
  else if(document.getSelection)
    txt = document.getSelection();                
  else if(document.selection)
    txt = document.selection.createRange().text;
 
  return txt;
}*/
function s(){
	if ( window.getSelection ){
		alert(window.getSelection().toString());
	}
	else if ( document.getSelection ) {	
		alert(document.getSelection().toString());
	}
}
 
</script>	

</body>
</html>


Обработчики onclick срабатывают и выводят выделенный фрагмент на <p></p>, но на <textarea> и <input> alert появляется но без фрагмента(как onclick так и onselect).
А меня интересует именно onselect в <textarea> то-есть получить фрагмент при выделении.
Ответить с цитированием
  #8 (permalink)  
Старый 15.01.2013, 20:22
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

<html>
<head>
	<meta http-equiv="content-type" content="text/html;charset=utf-8">
</head>
<body>

<form>
  <textarea id="id-0" onmouseup='s(this)'>Время на сайте</textarea>
  <input type="button" onclick="s(document.getElementById('id-0')
)" value="Вывести выделенный фрагмент"/>
</form>


<script>
    function s(a) {
     var b=a.value.substring(a.selectionStart, a.selectionEnd)
    if(b) alert(b)
    }
</script>	

</body>
</html>
Ответить с цитированием
  #9 (permalink)  
Старый 15.01.2013, 20:41
Новичок на форуме
Отправить личное сообщение для settype Посмотреть профиль Найти все сообщения от settype
 
Регистрация: 15.01.2013
Сообщений: 5

АБАЛДЕТЬ!!!
Да-а-а, +1448 это вам не плюшками баловаться, ЭТО ОПЫТ!
ОГРОМНОЕ СПАСИБО!
А где можно подробнее узнать о
elem.selectionStart, elem.selectionEnd
.
Спасибо.
Ответить с цитированием
  #10 (permalink)  
Старый 16.01.2013, 11:34
Аспирант
Отправить личное сообщение для Sanda Посмотреть профиль Найти все сообщения от Sanda
 
Регистрация: 12.10.2012
Сообщений: 90

Deff,
веселье начинается в IE8 (:
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно подавить событие при подключении своего обработчика? Маэстро Firefox/Mozilla 2 03.09.2011 11:46
Отловить событие simple Events/DOM/Window 3 11.05.2011 14:20
событие на динам. элемент (jQery, Ajax, php) kost_ik jQuery 2 06.11.2010 12:16
Как можно программно вызвать событие documenta onafterupdate nikolay84 Events/DOM/Window 1 08.07.2009 02:13
какое событие возникает во время формирования html IT-AleX Events/DOM/Window 2 20.02.2009 16:13