问题描述
我正在开发一个聊天应用程序,并使用jQuery作为客户端站点。现在,当我使用此行创建一个段落时,它将在其同级之前添加新段落。因此,如何在它们之后添加它。我使用了br标签,但是得到了相同的结果,这是代码的小提琴:
这是我要更改的主要jQuery行。
$('#answer').html("<p>" + bla + "</p>");
谢谢。
1楼
Lix
2
已采纳
2015-07-26 13:28:21
使用html函数实际上将替换#answer元素的整个HTML内容。
为了附加 <p>元素,您需要使用
.append(content)
将参数指定的内容插入到匹配元素集中每个元素的末尾。
$('#answer').append("<p>" + bla + "</p>");
这是的 。 我用您的代码更改了两件事:
-
您试图手动将新消息附加到
bla = bla + $('#answer').html();。 这是没有必要的,因为我们将始终仅添加bla变量中的新内容。 -
每次用户按下Enter键时,您就覆盖了
#answer元素的全部内容。 您需要做的就是添加输入字段中的新内容。
2楼
Sarath Chandra
0
2015-07-26 13:31:16
使用jQuery append在最后添加HTML内容。
在您的情况下,只需获取用户发送的,在#send元素中#send内容,在<p>标记中#answer并将其附加到#answer元素即可。
总之,用线
$('#answer').append("<p>" + $('#send').val() + "</p>");
它可以解决您的问题。