使用jQuery连接HTML与Python时$未定义,$.ajax无法运行
解决jQuery $未定义及代码优化问题
针对$未定义的排查与解决
验证jQuery是否加载成功
在浏览器开发者工具的控制台输入typeof $,如果返回undefined,说明jQuery未正确加载:- 尝试将jQuery文件下载到本地,用相对路径引入,比如:
<script src="./jquery-3.6.4.min.js"></script> - 替换script标签中的实体引号
"为普通双引号,避免HTML解析异常:<script src="https://code.jquery.com/jquery-3.6.4.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"> </script>
- 尝试将jQuery文件下载到本地,用相对路径引入,比如:
排查脚本执行顺序与冲突
确保jQuery的script标签始终在你的自定义脚本之前,且页面中没有其他库(如Prototype)占用$变量。如果存在冲突,可以改用jQuery代替$调用ajax:jQuery.ajax({ url:"/test", type:"POST", contentType: "application/json", data: s });
代码优化:避免双重JSON序列化
你的代码中s已经是JSON.stringify(dict_values)的结果,再次对s执行JSON.stringify会导致双重序列化,后端解析时会出错。修改ajax的data参数:
$.ajax({ url:"/test", type:"POST", contentType: "application/json", data: s // 直接传已序列化的字符串 });
内容的提问来源于stack exchange,提问作者Burrito
相关产品推荐
相关产品推荐

