Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> записать значени из text в табличку 
V
    Опции темы
Samotnik
Дата 3.3.2008, 19:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Есть такой код 
Код

var html = "<table style='width:" + w + "px;height:" + h + "px;border:0px solid;' cellspacing='0' cellpadding='0'>" +
               "<tr>" +
                    "<td align='center'  colspan='2'>" +
                         "<div class='sf_input' style='width:" + w + "px;height:" + Math.max(h - 20, 0) + "px;overflow-x:hidden;overflow-y:scroll;'>" +
                         "<table style='width:"+ (w - 20) +"px' cellspacing='0' cellpadding='0'></table>" +
                      "</div>"+
                    "</td>" +
               "</tr>" +
               "<tr style='height:20px;'>" +
                    "<td> Description </td>" +
                    "<td style='width:100%'><input type=\'text\' readonly=\"readonly\"/></td>" +
               "</tr>" +
               "</table>";

    this.parentNode.innerHTML = html;
    this.description = this.parentNode.getElementsByTagName('input')[0];

Нужно: 
Когда пользователь водит  Description  в текстовое поле,  чтобы  эти данные  отображались в табличке.  
Делаю вот так
Код

var _this = this;
 this.ElemsTable = this.parentNode.childNodes[0];
    this.ElemsTable.currentRow = null;
 this.description.onkeyup = function () {
          _this.ElemsTable.currentRow.cells[3].childNodes[2].innerHTML = this.value;
          _this.ElemsTable.currentRow.description = this.value;
    }

Но нифига не работает   smile 

Это сообщение отредактировал(а) Samotnik - 3.3.2008, 19:05
PM MAIL   Вверх
SelenIT
Дата 3.3.2008, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Samotnik, а что такое this во всем этом безобразии великолепии?

Лично меня сильно смущает строчка
Цитата(Samotnik @  3.3.2008,  19:00 Найти цитируемый пост)
this.parentNode.innerHTML = html;

по идее, она перезатирает содержимое этого таинственного this таблицей, и никакого this.description просто не остается...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Samotnik
Дата 3.3.2008, 19:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Цитата(SelenIT @  3.3.2008,  19:39 Найти цитируемый пост)
Samotnik, а что такое this во всем этом безобразии великолепии?

var _this = this;

Добавлено через 1 минуту и 32 секунды
Цитата(SelenIT @  3.3.2008,  19:39 Найти цитируемый пост)
Лично меня сильно смущает строчка

может и так, но она работает !!!!
Не работает  обработчик  кейап !!
Т.е.  он работает,  если внутри этой  функции написать   
Код

alert("Hello world");

то оно высветится!!    Но вот получить содиржимое таблички  никак не удается  smile 
PM MAIL   Вверх
SelenIT
Дата 3.3.2008, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Но в строках 2-4 примера идет обращение к this, а не _this...


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Samotnik
Дата 3.3.2008, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



вот тут   ошибка
Код

 this.ElemsTable = this.parentNode.childNodes[0];

фаер баг пишит  ElemsTable   has no properties
PM MAIL   Вверх
SelenIT
Дата 3.3.2008, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Samotnik, а если определить ElemsTable не как this.parentNode.childNodes[0], а как this.parentNode.getElementsByTagName('table')[0] - ошибка останется? А то в Gecko-браузерах в childNodes[0] часто норовят залезть пробелы между тегами...



--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Samotnik
Дата 3.3.2008, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Вобщем  что -  то сделал
Код

var html = "<table style='width:" + w + "px;height:" + h + "px;border:0px solid;' cellspacing='0' cellpadding='0'>" +
               "<tr>" +
                    "<td align='center'  colspan='2'>" +
                         "<div class='sf_input' style='width:" + w + "px;height:" + Math.max(h - 20, 0) + "px;overflow-x:hidden;overflow-y:scroll;'>" +
                         "<table style='width:"+ (w - 20) +"px' cellspacing='0' cellpadding='0'></table>" +
                      "</div>"+
                    "</td>" +
               "</tr>" +
               "<tr style='height:20px;'>" +
                    "<td> Description </td>" +
                    "<td style='width:100%'><input type=\'text\' readonly=\"readonly\"/></td>" +
               "</tr>" +
               "</table>";

    this.parentNode.innerHTML = html;

    this.description = this.parentNode.getElementsByTagName('input')[0];

    this.elements = this.parentNode.childNodes[0].rows[0].cells[0].childNodes[0].childNodes[0];

    this.elements.currentRow = null;

     this.description.onkeyup = function () {
     _this.elements.currentRow.cells[0].childNodes[0].innerHTML = this.value;
     _this.elements.currentRow.description = this.value;
    }

но данные добавляются не  в маленькую ячейку,  а  в изначальную таблицу, притом во всю!!  притом   новая таблицчка, где должно быть описание,   она  исчезает     
 smile 
PM MAIL   Вверх
SelenIT
Дата 3.3.2008, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


баг форума
****


Профиль
Группа: Завсегдатай
Сообщений: 3996
Регистрация: 17.10.2006
Где: Pale Blue Dot

Репутация: 49
Всего: 401



Ага... "<table style='width:"+ (w - 20) +"px' cellspacing='0' cellpadding='0'></table>" я сразу-то и не приметил... Данные нужно в нее вносить? Тогда напрямую через innerHTML не получится (как минимум в IE), нужно эти <table ... </table> не сразу вставлять во внешнюю таблицу, а приписывать к данным перед вставкой в innerHTML div-а. Но вообще я не совсем понимаю, в каком контексте это все происходит. Можно увидеть полный код страницы?


--------------------
Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму!
PM MAIL   Вверх
Samotnik
Дата 4.3.2008, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Вобщем порблема в том, что имне  еще в одну таблицу занырнуть нужно.  т.е. 
Код

_this.elements.currentRow.cells[0].childNodes[0].innerHTML = this.value;

Это и  есть сама таблица!!   и естессно   innerHTML  у нее не может быть !       
Нужно порникнуть внутрь этой таблицы  к еще одной!! 



Это сообщение отредактировал(а) Samotnik - 4.3.2008, 21:50
PM MAIL   Вверх
Samotnik
Дата 4.3.2008, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Super star !
****


Профиль
Группа: Awaiting Authorisation
Сообщений: 7192
Регистрация: 4.11.2006
Где: Минск City

Репутация: 3
Всего: 191



Вобщем сделал !!   smile 
Оказалось все очень просто !! 
 smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1296 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.