2010-03-16 3 views
0

Я использую валидатор формы javascript, и он создает div для сообщений об ошибках. В настоящее время он добавляет div в тело html, но я хотел бы изменить его, чтобы добавить его к определенному div по моему выбору. Я новичок в .js, но все равно дал этот шанс без результата.Как изменить целевой div для appendChild javascript

function inlineMsg(target,string,autohide) { 
var msg; 
var msgcontent; 
if(!document.getElementById('msg')) { 
lightbox = document.getElementById('TB_window'); 
msg = document.createElement('div'); 
msg.id = 'msg'; 
msgcontent = document.createElement('div'); 
msgcontent.id = 'msgcontent'; 
document.body.appendChild(msg); 
msg.appendChild(msgcontent); 
msg.style.filter = 'alpha(opacity=0)'; 
msg.style.opacity = 0; 
msg.alpha = 0; 
} else { 
msg = document.getElementById('msg'); 
msgcontent = document.getElementById('msgcontent'); 
} 

Созданный div является #msg div. Из моего не образованного ума это выглядит так, как строка 10 делает добавление. document.body.appendChild (msg)

Я создал строку 5 lightbox = document.getElementById ('TB_window'), которая, как я думаю (из моих ограниченных знаний), позволяет мне ссылаться на лайтбоксы в любой точке этой функции. Так что моя мысль в строке 10 заключалась в том, чтобы что-то делать;

document.lightbox.appendChild(msg); 

ответ

2

Удалить префикс документа, так

 
lightbox.appendChild(msg); 

Это будет потому, что Lightbox уже со ссылкой на элемент документа, то в сущности говоря

 
document.document.getElementById(); 

Таким же образом Банкомат означает автоматическое Кассовая машина. (Ну вот как я понимаю, что это будет Anway)

0

lightbox является переменной, а не свойство document объекта:

lightbox.appendChild(msg); 

Если вы обращаетесь к элементу только один раз, вам не нужно даже переменная:

document.getElementById('TB_window').appendChild(msg); 
Смежные вопросы