ASP.NET Core Navbar中Progress下拉菜单点击无响应问题求助
解决导航栏下拉菜单点击无响应问题
可能的原因及修复步骤
1. 确认Bootstrap依赖脚本已正确引入
Bootstrap 5的下拉组件依赖Popper.js和Bootstrap自身的JS文件,必须按顺序引入且确保加载成功:
在你的布局文件(如_Layout.cshtml)的</body>标签前添加以下脚本:
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.min.js"></script>
如果使用本地文件,需确保文件路径正确且文件未损坏。
2. 检查下拉项的URL是否正确生成
右键页面查看源代码,确认<a class="dropdown-item">的href属性生成了有效路由地址(如/Progress/Index):
- 确认
ProgressController存在且继承自Controller类 - 确认
Index和Create动作方法已正确定义(无访问权限限制或路由冲突) - 若自定义过路由配置,需确保路由规则能正确匹配这些动作
3. 排查JS冲突
暂时移除页面中其他非必要的JavaScript文件(如自定义脚本、第三方库),测试下拉菜单是否恢复正常。如果恢复,逐步加回脚本定位冲突源。
4. 验证Bootstrap版本兼容性
你的代码使用了data-bs-toggle="dropdown"(Bootstrap 5格式),需确认引入的Bootstrap JS也是5.x版本,不要混用4.x的旧格式(如data-toggle="dropdown")。
额外检查
打开浏览器开发者工具的Network标签,刷新页面后确认Popper.js和Bootstrap JS的请求状态为200(加载成功),若出现404,说明文件路径错误。
内容的提问来源于stack exchange,提问作者EasyPeasy
相关产品推荐
相关产品推荐

