Javascript.RU

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

обновить textarea
ситуация такая, есть кнопка, которая в textarea помещает текст. Это можно сделать двумя способами .innerHTML и .value

Но, value заменяет значки на esc-символы, потому не подходит.

С innerHTML всё нормально, но если хотя бы одну буковку отредактировать в поле textarea, то свойство innerHTML уже не хочет заносить новое значение в поле textarea. Как будто кнопка перестала работать. Отладка показывает, что всё нормально.

Что можете посоветовать? Есть ли какой-то метод обновить содержимое поля textarea?
Ответить с цитированием
  #2 (permalink)  
Старый 29.01.2012, 00:24
Аватар для T-sh
Профессор
Отправить личное сообщение для T-sh Посмотреть профиль Найти все сообщения от T-sh
 
Регистрация: 03.12.2009
Сообщений: 579

всё верно. innerHTML, насколько знаю, только в IE способен изменять значение поля. не предназначен он для этого, ибо innerHTML — работает с DOM, а тут всё такие изменяется значение атрибута value. Поэтому и надо использовать .value.

а как быть со значками, это уже другой вопрос... например, http://world-blog.ru/2562
__________________
С моих слов записано верно.

Последний раз редактировалось T-sh, 29.01.2012 в 00:45.
Ответить с цитированием
  #3 (permalink)  
Старый 29.01.2012, 11:18
wp2 wp2 вне форума
Новичок на форуме
Отправить личное сообщение для wp2 Посмотреть профиль Найти все сообщения от wp2
 
Регистрация: 28.01.2012
Сообщений: 6

innerHTML как раз работает и заносит в <textarea> то что надо (в разных браузерах!)
проблема в том, что если что-то отредактировать в этом поле, то уже перестаёт туда заносить.
Ответить с цитированием
  #4 (permalink)  
Старый 29.01.2012, 11:19
wp2 wp2 вне форума
Новичок на форуме
Отправить личное сообщение для wp2 Посмотреть профиль Найти все сообщения от wp2
 
Регистрация: 28.01.2012
Сообщений: 6

Сообщение от T-sh
например, http://world-blog.ru/2562
ну... реплейсить конечно выход, просто интересуюсь, можно ли обойтись без этого.
Ответить с цитированием
  #5 (permalink)  
Старый 29.01.2012, 11:32
wp2 wp2 вне форума
Новичок на форуме
Отправить личное сообщение для wp2 Посмотреть профиль Найти все сообщения от wp2
 
Регистрация: 28.01.2012
Сообщений: 6

вот вам простенький пример:

<html>
<head>
<title>adf</title>
<body>
<textarea>a</textarea><br>
<input type="button" value="ok" onclick="cl()">
</body>
</html>

<script>
function cl() {
  a = document.body.getElementsByTagName('TEXTAREA');
  a[0].innerHTML += 'a';
};
</script>



кнопка будет добавлять букву "а" каждый раз, когда вы на неё нажмёте. Но если вы удалите хоть одну буковку, кнопка перестанет работать.
Ответить с цитированием
  #6 (permalink)  
Старый 03.02.2012, 21:12
wp2 wp2 вне форума
Новичок на форуме
Отправить личное сообщение для wp2 Посмотреть профиль Найти все сообщения от wp2
 
Регистрация: 28.01.2012
Сообщений: 6

придумал интересный способ использования одновременно и value и innerHTML

a[0].value += '<';
a[0].innerHTML = a[0].value;


вот так всё будет работать. Даже если a[0].value += '&lt;';

но... после редактирования, будут почему-то ползти &lt;

Последний раз редактировалось wp2, 03.02.2012 в 21:15.
Ответить с цитированием
  #7 (permalink)  
Старый 03.02.2012, 21:44
wp2 wp2 вне форума
Новичок на форуме
Отправить личное сообщение для wp2 Посмотреть профиль Найти все сообщения от wp2
 
Регистрация: 28.01.2012
Сообщений: 6

ну всё, кажись обдурил:

function cl() {
  a = document.body.getElementsByTagName('TEXTAREA');
  b = document.createElement('TEXTAREA');
  b.innerHTML = '&lt;';
  a[0].value += b.value;
   
};


то есть, создаю невидимый textarea (который уже нельзя будет редактировать, а значит он будет работать). В него загоняю что угодно (оно уже будет без esc-символов благодаря свойству innerHTML).
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка каретки в конце текста textarea Dorian_bs Общие вопросы Javascript 2 26.01.2012 22:29
С чего начать...автоматическое преобразование в bb-code в html внутри textarea javasc Events/DOM/Window 0 22.01.2011 05:37
Resize textarea, в копилку. Robox jQuery 0 17.01.2011 17:05
изменение размера textarea Vovan222 Общие вопросы Javascript 23 12.09.2010 19:14
textarea validation Петр Общие вопросы Javascript 3 08.12.2009 17:59