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

Flask开发井字棋游戏:点击方块不显示X/O问题求助

问题修复:Flask井字棋点击方块不显示X/O

核心问题分析

当前点击方块无反应的根本原因是JavaScript文件未正确加载,浏览器找不到绑定点击事件的脚本,导致点击逻辑完全失效。次要问题是JS中的逻辑运算符错误,会影响后续胜负判断。

修复步骤

1. 修正HTML中JS文件的引用路径

Flask要求静态文件(JS、CSS、图片)必须放在static目录下,需使用url_for生成正确的静态资源路径。

原HTML中的脚本引用:

<script src="script.js"></script>

修改为:

<script src="{{ url_for('static', filename='script.js') }}"></script>

2. 确认项目目录结构正确

确保你的Flask项目结构符合规范,否则静态资源无法被正确访问:

tic-tac-toe/
├── app.py
├── templates/
│   └── index.html
└── static/
    ├── style.css
    └── script.js

3. 修复JS中的逻辑运算符错误

在winChecker函数中,位运算符&被错误用于逻辑判断,会导致非预期的结果,替换为逻辑与&&,同时建议使用严格不等于!==提升代码严谨性:

原JS代码片段:

if (element1 != "" && (element2 != "") & (element3 != "")) {

修改为:

if (element1 !== "" && element2 !== "" && element3 !== "") {

4. (可选)修正JS注释错误

JS中有一处注释笔误,不影响功能但建议修正:

//Display Y
element.innerText = "O";

改为:

//Display O
element.innerText = "O";

验证修复

完成上述修改后,重启Flask应用:

python app.py

访问页面后点击方块,即可正常显示X/O,后续胜负判断逻辑也能正常工作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 01:49:53