在多个表单的情况下实现页面不刷新评论与回复
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')
版权声明:本文为haeasringnar原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。