1

我对 jQuery 和 JS 很陌生。我正在尝试构建类似 Twitter 的东西,当然,是一个更简单的版本。这是 JSFiddle:基本上我希望每条不同的推文都有自己的评论框。(注意:评论不会有重新评论选项;所有评论都将连续出现在根推文下)现在发生的事情是,因为所有(不同的)推文,评论框出现在最后一条推文的末尾。我将如何实现我想要做的事情?

Javascript:

$(document).ready(function () {
$("#btn1").click(function () {
    $("p").append(" <b>Appended text</b>.");
});

$(".commentbutton").click(function v() {
    var text = $("#txt1").val();

    $("body").append('<br><div class="x"><label class="gp">' + text + '</label><button id="b1"</button>Comment</div>');
    $("body").find(".x:last").hide().slideDown("slow");

});

$(document).on('click', '.x>button', function () {
    $('body').find('.x:last').append('<input id="txt1" type="text">');
    });
});

HTML:

<div style="position:absolute;left:230px;top:30px;border:solid;display:inline-block">
<p>Type a tweet</p>
<input id="txt1" type="text">
<br>
<button id="btn2" class="commentbutton">Tweet</button>
</div>

CSS:

.gp {
border-style:solid;
max-width:30%;
padding:2px;
display:block;
}
.x {
width:200px;
background-color:#93bbd4;
border-style:solid;
}
#txt1 {
width:200px;
height:28px;
}
4

2 回答 2

1

看到这个:样本

$(document).on('click', '.x>button', function () {
    var id = "twt" + $(this).parent().index() +  "txt" + ($(this).parent().find('input').length+1);
    $(this).parent().append('<input id="' + id+ '" type="text">');
});

我已经解决了 textbox appendind 的问题。除此之外,我还修复了您遇到的多个 id问题。

于 2013-03-18T14:35:35.190 回答
0

更改append()prepend()。如果我理解你的问题是正确的,那就是你所需要的。

于 2013-03-18T14:33:49.327 回答