You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flask API向JavaScript传数据失败:tojson过滤器报错求助

Flask传值到JavaScript问题解决方法
  • 解决tojson过滤器报错的问题
    你碰到的tojson未定义问题,没必要纠结过滤器,换更稳妥的方式:

    • Flask端直接把值转成JSON字符串再传递:
      import json
      from flask import render_template
      
      # 接口代码修改为
      return render_template('login.html', statef=json.dumps("0"))
      
    • 前端JS直接接收这个转义后的字符串:
      var curr = {{ statef }};
      
  • 更简单的字符串传递方案
    因为你的值是字符串"0",完全可以直接用引号包裹渲染,不需要过滤器:

    <script>
        var stateElement = document.getElementById("state");
        var curr = "{{ statef }}";
        stateElement.innerHTML = curr;
        console.log(curr);
        console.log(stateElement);
    </script>
    

    这里把原代码里的变量名statef改成stateElement,避免和后端传过来的变量名冲突,减少混淆。

  • 排查渲染是否正常
    打开浏览器开发者工具查看页面源码,检查curr=后面是否正确渲染出了"0"。如果源码里还是显示{{statef|tojson}},说明模板没被Flask正确渲染,要确认路由是否正确指向了这个模板文件。

内容的提问来源于stack exchange,提问作者baraatemp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 23:05:34