开发者社区> 问答> 正文

flask+python如何获取input标签的用户输入

新手自学 Python + flask 在做自己的博客。如下图,在做一个用户的档案编辑页面,利用 ajax 来删除和创建 标签和 标签(后来发现 display 隐藏显示更加简单,但写了就算了)。第一图为默认状态,第二图为点击编辑后出现 input 输入栏:
screenshot
screenshot

这是自己写的 js 代码的插入部分:

function addhtml(obj){
    obj.after("<div class=\"input input-box\">\
         <input type=\"text\" class=\"form-control\">\
         <a class=\"confirm\">确认</a>\
         <a class=\"cancel\">取消</a>\
      </div>");
    $('p.set-username span').remove()
    obj.remove();
}

经过研究,据闻+貌似在上面用

包裹 后,能够利用 request.form['不知道填什么的位置'] 可以捉到用户的输入,尝试后失败。后来发现有各种 html 解释包,比如 HTMLParser,但发现人家都是用来做爬虫用的,我自己写网站竟然还要爬回自己网站再提交给 server 那也太奇怪了= =,除此之外,就是想到利用 json + javascript + Python 搭建类似 restful api 一样的方法来实现,但碍于没有项目经验,完全猜不出要怎么写,而之后就已经没有思路要怎么解决这个问题。

ps:flask-login也有,但是用起来对样式的控制还有灵活度低造成很不便,所以不想利用表单来获取,想知道有什么好办法不利用这个库也能行?

求解问题解决思路,或着相关资料连接或参考代码,非常感谢!

展开
收起
杨冬芳 2016-06-23 12:42:31 5021 0
1 条回答
写回答
取消 提交回答
  • IT从业

    额,我就只说服务端这边的情况

    form表单主要是GET和POST形式

    from flask import request
    
    @route('/test', methods=['GET', 'POST'])
    def test():
        if request.method == 'GET':
            data = request.args
        elif request.method == 'POST':
            data = request.form

    另外我觉得题主没法从request.form['不知道什么东西']获取数据,主要原因是

    •你用的是GET,自然无法在request.from里取到数据

    •你没有给input设置一个name参数

    2019-07-17 19:46:08
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载