为了账号安全,请及时绑定邮箱和手机立即绑定

Flask onchange 事件还是需要 Javascript 框架?

Flask onchange 事件还是需要 Javascript 框架?

12345678_0001 2023-08-05 20:50:14
我曾经使用 VBA 和 _Change、_Click 等事件构建 Microsoft Excel 应用程序我首先转向 JavaScript 和框架,但我对异步方面迷失了方向。所以我转向了 Python 和 Flask,我非常喜欢它。但是当我做前端时,很难构建动态表单,因为我没有找到本地标签(document.getElementsBy在 JavaScript 中)和我与 VBA 一起使用的事件(onChange、onClick 和其他事件)。例如,昨天,我想根据用户在 TextField 中输入的值来更新 SelectField 中的选项。我无法仅使用 Flask 和 Python 来完成此操作,我需要添加标签<script>和 JavaScript 片段:    <script>    //Get the controllers:    let train_number = document.getElementsByClassName('train-number');    let stops_list = document.getElementsByClassName('stops-list');    //Add a listener:    train_number[0].onkeyup = (e) => {        //Clear stops_list:        if (train_number[0].value == '') {            stops_list[0].options.length = 0;        }        //If alphanumeric character:        let charStr = String.fromCharCode(e.which || e.keyCode);        if (/[a-z0-9]/i.test(charStr)) {            //Clear stops_list:            stops_list[0].options.length = 0;            searched_train = train_number[0].value;            //Requests for stations:            fetch('/train/' + searched_train).then((response) => {                response.json().then((data) => {                    for (var i = 0; i < data.length; i++) {                        //Create new option element                        var opt = document.createElement('option');                        // create text node to add to option element (opt)                        opt.appendChild( document.createTextNode(data[i]) );                        //Set value property of opt                        opt.value = data[i];                         //Add opt to end of select box (sel)                        stops_list[0].add(opt);                     }                })            })        }    }</script>我的问题:有没有办法只用 Flask 构建动态表单和视图,或者迁移到另一个框架更好?如果更改框架更好,您建议哪一个(简单、轻便、用户友好、快速学习,并且如果可能的话,同步)?
查看完整描述

1 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

你非常需要 JavaScript。(从技术上讲,除非您需要支持 Internet Explorer,否则WebAssembly现在也是一种选择,但我认为它还不能很好地与 Python 配合使用。)


在我有限的理解中,Node.js 是一种后端(即服务器端)技术,而 Express 是一个框架,可以与它一起使用来帮助路由等。

查看完整回答
反对 回复 2023-08-05
  • 1 回答
  • 0 关注
  • 83 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信