Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Забрать выделенный текст в переменную
 
 автор: SHAman   (06.09.2006 в 12:50)   письмо автору
 
 

Это снова я. Есть задача: в текстфилде имеется текст. Выделяем часть этого текста мышью и нажимаем на кнопку. После этого, только выделенный текст присваивается переменной. Проблема в том, что я не знаю как найти выделенный текст.

Помогите, а?

   
 
 автор: AlexSol   (06.09.2006 в 13:11)   письмо автору
 
   для: SHAman   (06.09.2006 в 12:50)
 

вам нужно что-то из этого http://javascript.aho.ru/files/js/TextRange.html
+поиск по TextRange

   
 
 автор: 12345   (06.09.2006 в 13:34)   письмо автору
 
   для: AlexSol   (06.09.2006 в 13:11)
 

AlexSol: этого недостаточно, Гекко не учитывает.
Решение можно выкопать из примера вставки псевдокодов в поле ввода:
(прямо вот это фрагмент, не меньше:
var s=insField.value;var insPosL,insPosR;
if(insField.selectionEnd==null){var ch=0;
    if(d.selection&&d.selection.createRange){var tR=d.selection.createRange();var ch='character';var tR1=d.body.createTextRange();}
  if(!ch||tR.parentElement&&tR.parentElement()!=insField){insPosL=insPosR=s.length;}
  else{    insPosL=tR.text.length;
    if(insField.type=='textarea'){tR1.moveToElementText(insField);
      tR.setEndPoint('StartToStart',tR1);insPosR=tR.text.length;
    }else{tR.moveStart('textedit',-1);insPosR=tR.text.length;}
    insPosL=insPosR-insPosL;  //-чрезвычайно хитрое поведение textRange в textarea
}}else{  insPosL=insField.selectionStart;  insPosR=insField.selectionEnd;
  if(insBeg&&self.opera&&!insPosL&&!insPosR){insPosL=insPosR=s.length;insBeg=0;}
}
, insText=s.substring(insPosL,insPosR); - полученная строка, insField - объект поля ввода (insField=d.getElementById('t1');) )

   
 
 автор: SHAman   (07.09.2006 в 11:26)   письмо автору
 
   для: 12345   (06.09.2006 в 13:34)
 

Спасибо большое. Исчерпывающие примеры. Кое-что прям сразу использую. Еще раз убеждаюсь в бесконечной полезности данного форума!

SoftTime - rulez!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования