gpt4 book ai didi

javascript - 使用Ajax在输入时提交Textarea,然后渲染部分内容而不刷新整个页面

转载 作者:行者123 更新时间:2023-12-01 02:23:20 25 4
gpt4 key购买 nike

目前我正在尝试通过 JS 和 Ajax 在没有提交按钮的情况下发表评论,并且它有效。

问题是当提交帖子时,页面重新加载到 /post/:id/comment 页面,我希望它呈现部分而不是刷新整个页面或将我带到另一个页面。我对 JS 不熟悉,任何帮助将不胜感激!

这就是我正在处理的内容:

使用 Enter 进行发布的 JS

<script type="text/javascript" language="javascript">   
$(function(){
$('textarea').keypress(function(e) {
if (e.keyCode == 13 && !e.shiftKey) {
e.preventDefault();
var frm = this.form.submit();
$.ajax({
url: frm.attr('action'),
data: frm.serialize(),
complete: function(){
frm.submit();
},
dataType: json
});
}
});
</script>

评论表

<div class="CommentField">
<%= form_for ([micropost, @comment]), :remote => true do |f| %>
<%= f.text_area :content, :class => "CommentText", :placeholder => "Write a Comment..." %>
<% end %>
</div>

编辑

评论 HTML

<div class='UserCommentContainer'>
<div class='UserPicture'>
<%= image_tag comment.user.avatar.url(:bit), :class =>"PP" %>
</div>
<div class='UserComment'>
<div class='UserName sm'>
<%= link_to comment.user.name, user_path(comment.user) %>
</div>
<div class='UserCommentText'>
<%= comment.content %>
</div>
<div class='UserCommentDate'>
<%= time_ago_in_words(comment.created_at) %>
</div>
</div>
</div>

最佳答案

您需要可以使用 URL 解析的内容,因此部分内容无法实现。你应该设置一个页面供这个函数调用,并调用它

关于javascript - 使用Ajax在输入时提交Textarea,然后渲染部分内容而不刷新整个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9569186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com