Flask 页面无刷新评论

本文介绍了一种在多表单环境下实现网页评论与回复功能而不进行页面刷新的方法。通过结合HTML、JavaScript(使用jQuery库)及Python Flask框架,使得用户在提交评论或回复后页面内容能够实时更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在多个表单的情况下实现页面不刷新评论与回复

Html代码部分
#评论的表单 (注意在这个表单之外是还有其他表单存在的,如Flask的表单类)
<form action="" method="post">
  <textarea rows="3" cols="20" class="rtext" placeholder="请输入回复内容..." style="width: 60%;"></textarea><br>
  <input type="submit" class="mysubmit" value="回复"/>
  <input type="reset" name="reset" class="reset" value="清空"/>
</form>
JS代码部分
#在jq代码之前加上这个
var $SCRIPT_ROOT = {{request.script_root|tojson|safe}};
$('.mysubmit').click(function () {
  var data = {
  'b_user': 'userid',
  're_text': 'usercontext',
  };
  $.ajax({
  type: 'POST',
  url: $SCRIPT_ROOT,
  data: data,
  dataType: 'json',
  });
  {#清空输入框里面的消息#}
  $('.reset').trigger('click');
  alert('回复成功,请点击详情查看!');
  return false;
  {#必须加上上面的这个,不然会报token的错误#}
});
Python views视图代码部分
@main.route('/',methods=['GET','POST'])
def index():
    #判断值是否为空,是测跳过,目的是第一次进入时为空值,需要过滤
    if request.form.get('b_user') is None:
        pass
    else:
        #在这里必须使用form方法接收,如果使用args则会错误
        #args存储当前所有的GET请求的数据
        b_user = request.form.get('b_user')
        re_text = request.form.get('re_text')
        #这里为存数据库的操作
        reposts = RePosts()
        reposts.rid = current_user.id
        reposts.bid = b_user_id
        reposts.content = re_text
        db.session.add(reposts)
        db.session.commit()
        # print(b_user_id,re_text)
    return render_template('main/index_four.html')
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haeasringnar

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值