Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.03.2010, 00:21
Интересующийся
Отправить личное сообщение для ildaroit Посмотреть профиль Найти все сообщения от ildaroit
 
Регистрация: 08.02.2010
Сообщений: 11

ИЕ криво работает с textarea
Братья всем привет, такой вопрос - есть скрипт зависимого списка, выбираю в чекбоксе значение, в текстареа должно появиться к нему пояснение:
var Мышь = Array("Компьютерная мышь");
var Пилот = Array("Пилот (тройник)");
function showNames(v){
var mas = eval(v);
var el = document.getElementById("names");
while(el.childNodes.length>0){
el.removeChild(el.childNodes[el.childNodes.length-1]);
}
for(var i=0;i<mas.length;i++){
var opt = document.createElement("option");
opt.innerHTML=mas[i];
el.appendChild(opt);

.. <option value="Мышь">Мышь</option>
<option value="Пилот">Пилот (тройник)</option> ..

<textarea id="names" rows="6" cols="40" name="comment">
</textarea>

- так вот в Опере все работает, в ИЕ работает но если пояснение большое то когда навожу мышкой она как бы не дает выделить сходу текст, дает если только снизу начать выделение, курсор становится крестиком, в FF и Chrome не раб скрипт вообще.

Тут по делу видно конечно что массив то и не нужен (до этого использовал), но тем не менее думаю не в этом дело.

Подкажите пж - почему ИЕ нормально не дает выделить текстареа а FF не обрабатывает совсем (в текстарея ничего не появляется при выборе)?
Возм. есть более удачная реализация?
Заранее Благодарю!
Ответить с цитированием
  #2 (permalink)  
Старый 15.03.2010, 09:51
Аватар для subzey
Пионэр
Отправить личное сообщение для subzey Посмотреть профиль Найти все сообщения от subzey
 
Регистрация: 16.11.2009
Сообщений: 1,322

А зачем Вы оption к textarea цепляете?
Ответить с цитированием
  #3 (permalink)  
Старый 15.03.2010, 10:02
Интересующийся
Отправить личное сообщение для ildaroit Посмотреть профиль Найти все сообщения от ildaroit
 
Регистрация: 08.02.2010
Сообщений: 11

Ну клиент выбирает в option один из вариантов а в textarea появляется его описание.
Ответить с цитированием
  #4 (permalink)  
Старый 15.03.2010, 15:55
Аватар для subzey
Пионэр
Отправить личное сообщение для subzey Посмотреть профиль Найти все сообщения от subzey
 
Регистрация: 16.11.2009
Сообщений: 1,322

var el = document.getElementById("names"); // HTMLTextareaElement
…
var opt = document.createElement("option"); // HTMLOptionElement
el.appendChild(opt); // option — новый дочерний элемент textarea


В итоге получается:
<textarea>
	<option>…</option>
</textarea>

А textarea-то не то, что option, вообще, дочерних элементов иметь не может.
Ответить с цитированием
  #5 (permalink)  
Старый 16.03.2010, 05:27
Интересующийся
Отправить личное сообщение для ildaroit Посмотреть профиль Найти все сообщения от ildaroit
 
Регистрация: 08.02.2010
Сообщений: 11

Спасибо брат, заменил option на text и все стало как надо.
Эта функция до этого обрабатывала как раз 2 зависимых select.

К сож. не совсем знаю все эти функции - подскажи пж где можно почитать об этом начинающему?

И еще вопрос - подскажи пж почему в FF и Chrome она не работает?
Ну и последнее - скажи свой кошелек на почту я копеечку закину за помощь в трудную минуту
Ответить с цитированием
  #6 (permalink)  
Старый 16.03.2010, 09:22
Аватар для subzey
Пионэр
Отправить личное сообщение для subzey Посмотреть профиль Найти все сообщения от subzey
 
Регистрация: 16.11.2009
Сообщений: 1,322

var el = document.getElementById("names");
while(el.childNodes.length>0){
el.removeChild(el.childNodes[el.childNodes.length-1]);
}
for(var i=0;i<mas.length;i++){
var opt = document.createElement("option");
opt.innerHTML=mas[i];
el.appendChild(opt);

вот это, судя по коду, можно попробовать заменить на
var el = document.getElementById("names");
el.innerHTML = mas.join("");

может и заработать.

А денег не нужно — лучше выпей пива и вспомни добрым словом

Последний раз редактировалось subzey, 16.03.2010 в 09:28.
Ответить с цитированием
  #7 (permalink)  
Старый 16.03.2010, 20:54
Интересующийся
Отправить личное сообщение для ildaroit Посмотреть профиль Найти все сообщения от ildaroit
 
Регистрация: 08.02.2010
Сообщений: 11

ты прав друг - все заработало! респект тебе.
а насчет денег - не спеши отказываться, всегда успеешь
Ответить с цитированием
  #8 (permalink)  
Старый 16.03.2010, 20:55
Интересующийся
Отправить личное сообщение для ildaroit Посмотреть профиль Найти все сообщения от ildaroit
 
Регистрация: 08.02.2010
Сообщений: 11

кстати тему можно поменять на "я криво понимаю javascript, помогите!"
Ответить с цитированием
  #9 (permalink)  
Старый 16.03.2010, 20:56
Интересующийся
Отправить личное сообщение для ildaroit Посмотреть профиль Найти все сообщения от ildaroit
 
Регистрация: 08.02.2010
Сообщений: 11

отправил тебе личное сообщение
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ява-скрипт выборочно работает-не работает zeta777 Internet Explorer 0 20.01.2010 11:41
Динамическая HTML форма (FireFox - работает, IE - не работает) dm1tr1y Общие вопросы Javascript 10 11.12.2009 15:59
Safari + ajax некорректно работает, а в других работает demi AJAX и COMET 35 15.07.2009 14:11
Скрипт меню-гармошки работает выборочно Extern Элементы интерфейса 2 23.02.2009 15:32
Не работает innerHTML для textarea в ФФ ropil Сайт Javascript.ru 5 06.05.2008 19:53