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

Bootstrap 4下拉按钮在ASP.NET MVC视图中无法正常工作

嘿,我之前在ASP.NET MVC项目里用Bootstrap下拉按钮时也踩过这个坑!你现在只引入了Bootstrap的CSS文件,但下拉组件的交互功能是需要JavaScript来驱动的,光靠CSS只能显示静态样式,点了不会展开很正常。

解决步骤如下:

  • 第一步:补上必要的JavaScript依赖
    Bootstrap的下拉组件依赖jQuery(如果你用的是Bootstrap 4及以下版本的话)和它自己的JS文件,而且引入顺序很关键——必须先加载jQuery,再加载Bootstrap的JS。你可以在视图的底部(或者布局页的</body>标签之前)添加这两个脚本:
<script src="~/Scripts/jquery.min.js"></script>
<script src="~/Scripts/bootstrap.min.js"></script>

注意核对一下你的项目里这两个文件的路径是否正确,如果是通过NuGet安装的Bootstrap,这个路径一般是对的;如果是手动下载的文件,要确保路径和你存放的位置一致。

  • 第二步:检查下拉菜单的结构是否完整
    看你给出的代码片段,下拉按钮的属性是对的(data-toggle="dropdown"、aria-haspopup="true"这些都没问题),但要确保下拉菜单里的选项用正确的结构,比如用<a class="dropdown-item" href="#">...</a>来定义每个选项,这样样式和交互才会正常。

给你一个完整的可运行示例:

<div class="row">
    <div class="dropdown">
        <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
            Location
        </button>
        <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
            <a class="dropdown-item" href="#">New York</a>
            <a class="dropdown-item" href="#">London</a>
            <a class="dropdown-item" href="#">Tokyo</a>
        </div>
    </div>
</div>

<!-- 务必放在页面底部,避免DOM未加载完成就执行JS -->
<script src="~/Scripts/jquery.min.js"></script>
<script src="~/Scripts/bootstrap.min.js"></script>
  • 额外排查点
    如果还是不行,检查一下:
    • 有没有其他JavaScript库和jQuery冲突?比如页面里是否加载了Prototype这类会和jQuery冲突的库?
    • Bootstrap的CSS和JS版本是否匹配?比如不能用Bootstrap 4的CSS搭配Bootstrap 5的JS,版本要统一。

这样应该就能解决你的下拉按钮不工作的问题啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:06:51