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

求助:点击Dropdown列表项时替换按钮文本的实现方案

解决Bootstrap下拉菜单点击项替换按钮文本的问题

没问题,这事儿很容易实现,只需要添加一小段jQuery代码就能完成需求。下面是完整的实现代码:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"></script>
<div class="container">
  <h2>Dropdowns</h2>
  <p>The .dropdown class is used to indicate a dropdown menu.</p>
  <p>Use the .dropdown-menu class to actually build the dropdown menu.</p>
  <p>To open the dropdown menu, use a button or a link with a class of .dropdown-toggle and data-toggle="dropdown".</p>
  <div class="dropdown">
    <button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
      Dropdown button
    </button>
    <div class="dropdown-menu">
      <a class="dropdown-item" href="#">Link 1</a>
      <a class="dropdown-item" href="#">Link 2</a>
      <a class="dropdown-item" href="#">Link 3</a>
    </div>
  </div>
</div>

<script>
$(document).ready(function(){
  // 监听下拉菜单选项的点击事件
  $('.dropdown-item').click(function(e){
    // 阻止链接默认的跳转行为(避免点击后跳到页面顶部)
    e.preventDefault();
    // 获取当前点击项的文本内容
    var selectedText = $(this).text();
    // 替换下拉按钮的显示文本
    $('.dropdown-toggle').text(selectedText);
  });
});
</script>

关键逻辑说明:

  • 页面加载完成后,给所有下拉菜单选项绑定点击事件
  • 用e.preventDefault()拦截链接的默认跳转行为,避免不必要的页面滚动
  • 通过$(this).text()获取被点击选项的文本内容
  • 最后把下拉按钮的文本替换成选中项的内容,完成需求

这样当你点击下拉菜单里的任意一项时,按钮的文本就会立刻同步成你选中的内容啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 09:20:07