Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > создать кнопку с помощью готового класса


Автор: Samotnik 21.2.2008, 15:37
Значит есть класс, который создает кнопки class_button_control  для того что бы создать кнопку, ему необходимо принять 2 параметра. 1-й  parentHTMLElement  а 2-й название кнопки. Так вот, у меня есть не замысловатый код
Код

com_connectionpool = function(baseHTMLElement, owner)
{
   
    sfSystem.callAction("NewAction", data, this.getInfoCallback, this);

    this.baseElement = baseHTMLElement;
    this.container = document.createElement("textarea");
    this.container.setAttribute("rows", "20");
    this.container.setAttribute("cols", "20");
   
    this.refreshButton = new class_button_control(
            this.container.childNodes[1].childNodes[0].rows[0].cells[0], "название");
    this.refreshButton.onClick = function() {
           function ();
    }

Пишу этот код, а кнопка не появляется  :'(((     Помогите плз  разобраться, что у меня тут parentHTMLElement  и что нужно передать в  class_button_control   
Походу вся ошибка в строчке 
 this.container.childNodes[1].childNodes[0].rows[0].cells[0], "название");
 smile 

Автор: Ghirik 21.2.2008, 16:44
Samotnik, Вы так всегда вопросы задаете, что потом постов пять нужно выяснять все детали. Неужели сложно оформить страничку с багом. Типа вот смотрите, нажимаю кнопку, должна создаться кнопочка, а не создается.

Автор: ksnk 21.2.2008, 16:47
А this.container в документ Пушкин вставлять будет?

Автор: solenko 21.2.2008, 16:51
Код

this.container = document.createElement("textarea");
//двумя строками ниже
this.container.childNodes[1].childNodes[0].rows[0].cells[0]

Вот и возникает вопрос:
Откуда childNodes у телько что созданнго элемента?

Автор: Samotnik 21.2.2008, 16:51
Вобщем, нужно создать кнопку красивую, есть готовый класс, который ее создает, но ему нужно передать  параметр  parentHTMLElement  (т.е. параметр, который укажет на чем именно создать кнопку)  Вот ...   т.е.   нужно написать, примерно  так
Код

 this.refreshButton = new class_button_control(/*Вот сдесь нужно передать, то окошечко, на которм нужно создать обьект,  т.е.  тут должен  быть  parentHTMLElement*/ , "название");
    this.refreshButton.onClick = function() {
          а();
    }

Так вот вопрос, как  мне  передать мое окошечко ???

Добавлено через 56 секунд
что написать вместо коментариекв ??   

Автор: solenko 21.2.2008, 16:54
Цитата

как  мне  передать мое окошечко ???   

Вот забудьте о том, что этот вопрос задаете вы, перечитайте ветку и попробуйте понять "Какое, нафик, окошечко?"

Автор: Samotnik 21.2.2008, 16:56
Цитата(solenko @  21.2.2008,  16:51 Найти цитируемый пост)
Откуда childNodes у телько что созданнго элемента?

так в том то и дело, что я не знаю  smile   я не знаю, что туда передать,....  вот ,..

Добавлено через 6 минут и 19 секунд
Еще раз,...   у меня есть окошечко  smile   я в нем  создаю   textarea   вот так
Код

 this.baseElement = baseHTMLElement;
    this.container = document.createElement("textarea");
    this.container.setAttribute("rows", "20");
    this.container.setAttribute("cols", "20");
    this.baseElement.appendChild(this.container);

Оно успешно создается и  заполняется,..  теперь, мне нужно в этом же окошечке (под   textarea) создать красивую кнопочку (заготовка для создания, есть в готовом классе)  мне нужно всего лишь передать параметр parentHTMLElement  который укажет, где именно создать кнопочку  smile    А какой именно параматр передавать я  не наю smile

Автор: solenko 21.2.2008, 17:04
this.baseElement или baseHTMLElement если в том же контейнере

Автор: Samotnik 21.2.2008, 17:06
Цитата(solenko @  21.2.2008,  17:04 Найти цитируемый пост)
this.baseElement

и усе ???   smile      ща опорбую  
Пасибо  smile

Добавлено @ 17:11
solenko,   smile   я тебя  АБАЖАЮ !!!!  заработало   smile  smile  smile    С меня при встрече  пиво !!!   smile 
Тока, порблемка....   теперь моя красивенькая  кнопочка  есть...   но она  вместо   textarea   smile    как это исправить ??   шоб кнопочка была под  ней   ??   И ваще   textarea    пропала !!!

Добавлено @ 17:12
мля ....    smile    textarea   пропала    smile

Автор: solenko 21.2.2008, 17:16
У вас при создании все содержимое контейнера заменяется создаваемым элементов, видимо.
Код

 this.baseElement = baseHTMLElement;
    this.container = document.createElement("textarea");
    this.container.setAttribute("rows", "20");
    this.container.setAttribute("cols", "20");
    this.baseElement.appendChild(this.container);
    var div = document.createElement('div');
    this.baseElement.appendChild(div);
    this.refreshButton = new class_button_control(div, "название");


Автор: Samotnik 21.2.2008, 17:24
solenko,  Спасибо ограмаднейшее за помощь...    
вопросик, а где можно прочитать про  это, чтоб я в след раз таких глупых вопросов не задвал ??   Это  же что-то  из серии   DOM  да ??
Мот есть ссылочка, для начинающих ??   Чтоб не путать  document   с  this.baseElement  и т.д. ??  

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)