Javascript.RU

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

Виртуальная клавиатура на textarea - проблема...
Вот код:
<textarea id='text'></textarea>
<br/><select id='cons' onchange='func(this.value)'>
<option value=''>согласные</option>
<option value='b'>b</option>
<option value='c'>c</option>
</select>
<select id='vow' onchange='func(this.value)'>
<option value=''>гласные</option>
<option value='a'>a</option>
<option value='o'>o</option>
</select>
<script>
function func(par){
var text=document.getElementById('text').innerHTML+par;
document.getElementById('text').innerHTML=text;
var sel=document.getElementsByTagName('select');
for (var i=0;i<sel.length;i++)sel[i].selectedIndex='0';
}
</script>

В принципе, работает, но только до того момента, как установлю курсор в поле textarea и кнопкой с клавиатуры удалю какую-нибудь вписанную ранее букву.
После этого показывать вписанные в поле буквы начисто отказывается, хотя веб-консоль Лисы никаких ошибок не выдаёт.
Посоветуйте что-нибудь для решения проблемы!
Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 01.06.2016, 14:31
Аватар для Botik21
Аспирант
Отправить личное сообщение для Botik21 Посмотреть профиль Найти все сообщения от Botik21
 
Регистрация: 01.06.2016
Сообщений: 87

<textarea id='text'></textarea>
<br>
<select id='cons' onchange='func(this)'>
  <option value=''>согласные</option>
  <option value='b'>b</option>
  <option value='c'>c</option>
</select>
<select id='vow' onchange='func(this)'>
  <option value=''>гласные</option>
  <option value='a'>a</option>
  <option value='o'>o</option>
</select>
<script type="text/javascript">
  var kb = {
    area: document.getElementById('text')
  };

  function func(select) {
    kb.area.value += select.value;
    select.selectedIndex = 0;
  }
</script>

Последний раз редактировалось Botik21, 02.06.2016 в 19:09.
Ответить с цитированием
  #3 (permalink)  
Старый 01.06.2016, 15:02
Новичок на форуме
Отправить личное сообщение для coloboc66 Посмотреть профиль Найти все сообщения от coloboc66
 
Регистрация: 01.06.2016
Сообщений: 3

to Botik21:
Спасибо, это работает!
Только всё-равно не понимаю, почему МОЙ код плохо работал...
Ответить с цитированием
  #4 (permalink)  
Старый 01.06.2016, 15:06
Аватар для Botik21
Аспирант
Отправить личное сообщение для Botik21 Посмотреть профиль Найти все сообщения от Botik21
 
Регистрация: 01.06.2016
Сообщений: 87

Надо было писать не в innerHTML, а в value
Ответить с цитированием
  #5 (permalink)  
Старый 02.06.2016, 11:26
Новичок на форуме
Отправить личное сообщение для coloboc66 Посмотреть профиль Найти все сообщения от coloboc66
 
Регистрация: 01.06.2016
Сообщений: 3

А как сделать селектом переход на новую строку?
вот это:
<select onchange='func(this)'>
<option value=''></option>
<option value='l\n'>переход</option>
</select>

не работает (скрипт выше).

Последний раз редактировалось coloboc66, 02.06.2016 в 11:28.
Ответить с цитированием
  #6 (permalink)  
Старый 02.06.2016, 14:42
Аватар для Botik21
Аспирант
Отправить личное сообщение для Botik21 Посмотреть профиль Найти все сообщения от Botik21
 
Регистрация: 01.06.2016
Сообщений: 87

На правах наркомании хоть и работает:
<option value='
'>Новая строка</option>

Или так:
function func(select) {
  kb.area.value += select.value.replace('\\n', '\n');
  select.selectedIndex = 0;
}

Хотя в целом идея вводить символы селектом очень странная

Последний раз редактировалось Botik21, 02.06.2016 в 14:44.
Ответить с цитированием
  #7 (permalink)  
Старый 02.06.2016, 18:53
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Botik21,
[HTML run][/HTML]
на всякий случай для поста №2
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с textarea bgraf Общие вопросы Javascript 1 15.07.2013 10:31
textarea небольшая проблема jeysmook jQuery 5 04.11.2012 19:42
Виртуальная клавиатура kaikai Events/DOM/Window 6 30.09.2012 20:42
Виртуальная клавиатура vvsh Events/DOM/Window 3 20.04.2010 17:36
виртуальная клавиатура Фоныч Элементы интерфейса 6 19.03.2010 15:23