18910140161

为什么在flask中返回jsonify()会转到API页面,而不是更改页面?

顺晟科技

2021-08-29 11:52:37

232

我试图在我的Flask网站上建立一个向上投票/向下投票的系统,我试图使用AJAX实现它,这样页面就不会在每次有向上投票或向下投票时重新加载。

我对向上投票按钮的烧瓶应用程序是:

@main.route('/projects/upvote/<int:id>')
def projectupvote(id):
    post = projectPosts.query.get_or_404(id)
    post.likes += 1
    db.session.commit()
    return jsonify({"likes":post.likes})

我的HTML是:

<a href='/projects/upvote/{{project.id}}' class="votesButton">Up vote</a>
<a href='/projects/downvote/{{project.id}}' class="votesButton">Down vote</a>

<h1 style="margin-bottom:5%; display: inline-block;" id = 'likes'>&nbsp;{{project.likes}}</h1>

我的JS应用程序是: $(document).ready(function(){

$('a').on('click', function(event) {

  $.ajax({
    data : {
      likes : $('#likes').val(),
    },
    type : 'GET',
    url : '/project'
  })
  .done(function(data) {

    $('#likes').text(data.likes).show();

  });

  event.preventDefault();

});

});

在运行代码时,不是在页面上更新喜欢,而是将我引导到:JSON API页面

它给出正确的数据,但会移到另一个页面,显示类似的原始JSON数据。 我可以知道为什么会发生这种情况以及如何处理这种情况吗?我已经研究了几个小时,但还是找不到答案。

非常感谢!


顺晟科技:

  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航