2013-04-16 94 views
1

我需要在动态div中显示来自服务器的消息(注销)。使用这个js如何将动态创建的div添加到容器中

$('#LogOut').on('click', function(e){ 
    $.ajax({ 
     type: "POST", 
     url: "PHP/LogOut.php", 
     success: function(data) { 
     $('#message').fadeIn('fast').html('<p><span>Somesite.com</span>' + data + '<a id="close" href="">X</a></p>'); 
     } 
    }); 
    e.preventDefault(); 
    }); 

我不能,我能得到它的工作,如果我有div元素编码到页面,例如:

<div id="message"></div> 

与CSS #message {无显示}这与.append一起工作,我不想在每个页面上硬编码。有没有一种很好的方式来动态创建它,并在您单击注销时在每个页面上追加到div#main?除此之外,我没有任何问题,PHP是好的,注销工作正常等... 谢谢。

+0

您是否搜索jQuery'append'? http://api.jquery.com/append/ –

+0

也考虑使用'templates'和'includes',而不是硬编码。 –

+0

@ m.spyratos是的,我做了,并在我的问题的最后一段说。我使用模板和包含,最后仍输出'硬编码'的HTML。我想动态地做到这一点。 –

回答

3

尝试使用appendTo

$('<div id="message"></div>').appendTo(document.body).html('<p><span>Somesite.com</span>' + data + '<a id="close" href="">X</a></p>').fadeIn('fast'); 

append的事情是,它不返回附加的元素,它使返回的父元素。

$(document.body).append($('<div></div>')) //returns $(document.body); 
+0

非常感谢。我不知道appendTo,只能追加。我很感激帮助人,非常酷 - 正是我所期待的。 –

+0

当然,不得不等待5分钟。 –

相关问题