动态创建的按钮只出现一次

时间:2015-05-08 17:16:21

标签: javascript jquery html

我想使用Javascript / jQuery创建像facebook这样的更新状态框。 当我点击发布按钮时,会创建div元素,但我附加在其中的按钮只出现一次。

这是我的脚本代码:

var hello = function() {
    var post = $.trim($("#status_message").val());

    if (post.length != 0) {
        $('<div id="hi">').text(post).prependTo('.posts');
        $("#status_message").val(" ");
        $("#hi").append($("#delete"));
        $("#hi").append($("#comment"));    
    }

}

html代码:

<input type="button" id="post" name="submit" value="Post" class="btn btn-primary" onclick="hello()">  
<div class="counter"></div>  

1 个答案:

答案 0 :(得分:2)

使用.append($('#delete'));您只需移动名为$('#delete')的现有div并将其附加到#hi元素。因此只会使用一个......

然而,你正在做的一些事情无论如何都没有任何意义......如果你不止一个经验,你不应该使用id。如果您有多个具有相同名称的元素,则应将它们标识为类的一部分并使用class属性。如果只有一个元素,那么你应该使用id。

你会想要做这样的事情......

function hello() {
    var post = "test";
    var content = $('<div class="hi">');
    content.text(post)
        .append($('<div class="delete">delete</div>'))
        .append($('<div class="comment">comment</div>'))
        .prependTo('.posts');
}