如何以编程方式打开 Bootstrap 下拉菜单

2023-12-25

当我单击另一个下拉列表中的项目时,我试图打开 Bootstrap 下拉列表。

这个想法是从第一个下拉列表中选择一个城市 - 然后脚本将自动打开第二个包含区域的下拉列表(并仅显示与所选城市相对应的区域)。

这是我的JS:

$('#sidebar_filter_city li').click(function(){   
    $('#sidebar_filter_areas').dropdown('toggle');
});

这是 HTML:

<div class="dropdown form-control">
   <div data-toggle="dropdown" id="sidebar_filter_cities" class="sidebar_filter_menu" data-value="jersey-city">Jersey City<span class="caret caret_sidebar"></span></div>           
   <input type="hidden" name="advanced_city" value="jersey-city">
   <ul id="sidebar_filter_city" class="dropdown-menu filter_menu" role="menu" aria-labelledby="sidebar_filter_cities">
      <li role="presentation" data-value="">All Cities</li>
      <li role="presentation" data-value="jersey-city">Jersey City</li>
      <li role="presentation" data-value="london">London</li>
      <li role="presentation" data-value="new-york">New York</li>
   </ul>        
   </div>
</div>

<div class="dropdown form-control">
    <div data-toggle="dropdown" id="sidebar_filter_areas" class="sidebar_filter_menu">All Areas<span class="caret caret_sidebar"></span> </div>           
        <input type="hidden" name="advanced_area" value="">
           <ul id="sidebar_filter_area" class="dropdown-menu filter_menu" role="menu" aria-labelledby="sidebar_filter_areas">
               <li role="presentation" data-value="">All Areas</li>
               <li role="presentation" data-value="east-harlem" data-parentcity="">East Harlem</li>
               <li role="presentation" data-value="greenville" data-parentcity="">Greenville</li>
               <li role="presentation" data-value="manhattan" data-parentcity="">Manhattan</li>
               <li role="presentation" data-value="northern-brooklyn" data-parentcity="">Northern Brooklyn</li>

                  .....
           </ul>        
        </div>    
</div>

最好的方法是检查下拉列表是否尚未打开,然后使用.dropdown('toggle').

需要注意的几件事:

  • 如果你想通过点击另一个元素来触发它,你必须 终止另一个元素上的点击事件- 否则 Bootstrap 将 将其视为下拉列表外部的单击并立即将其关闭。
  • $('.dropdown').addClass('open')不是一个很好的替代品$('.dropdown-toggle').dropdown('toggle')正如其他建议的那样 答案,因为这会导致下拉菜单永久打开 而不是当您单击组件时关闭。

HTML:

<button class="btn btn-secondary trigger_button">Trigger dropdown</button><br><br>
<div class="dropdown">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-toggle="dropdown">
Dropdown
  </button>
  <div class="dropdown-menu">
  Stuff...
  </div>
</div>

JS:

$('.trigger_button').click(function(e){
  // Kill click event:
  e.stopPropagation();
  // Toggle dropdown if not already visible:
  if ($('.dropdown').find('.dropdown-menu').is(":hidden")){
    $('.dropdown-toggle').dropdown('toggle');
  }
});

小提琴示例 https://jsfiddle.net/gsj5o3j6/4/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何以编程方式打开 Bootstrap 下拉菜单 的相关文章

  • 如何在javascript中使用自动递增id?

  • Google Analytics API - 跟踪子域

    我有一个网站 每个用户都注册为子域 username domain com 我正在使用以下代码跟踪所有子域 var gaq gaq gaq push setAccount UA XXXXXX X gaq push setDomainName
  • 在 HTML TextArea 中设置(或读取)光标/插入符的值

    我正在尝试 但失败了 在 HTML 文本区域中实现拖放机制 使用 jQuery 或 Scriptaculous 我们都使用 拖放机制相对容易 因此我愿意接受使用这两者之一的答案 问题是 我似乎找不到读取或设置插入点的方法 我最终想要做的是确
  • 如何在Rails 中使用highlight.js?

    我正在尝试在我的 Rails 应用程序中使用语法突出显示和highlight js height js 的说明如下 https github com isagalaev highlight js https github com isaga
  • 超出 Google 电子表格上的 ImportXML 限制

    我现在陷入了 抓取问题 特别是我想将作者的姓名从网页提取到谷歌电子表格 其实功能 IMPORTXML A2 span class author vcard meta item 正在工作 但是当我增加了要抓取的链接数量后 它就开始无限加载 所
  • 等待动态加载脚本

    在我的页面正文中 我需要插入以下代码作为 AJAX 调用的结果 p Loading jQuery p p Using jQuery p 我不能使用 load 由于文档已经加载 因此该事件不会触发 这安全吗 如果没有 我如何确保在执行自定义生
  • javascript获取网页中选定文本的段落

    突出显示文本后 我想获取所选文本所在的段落 var select window content document getSelection 请问有什么指点吗 这实际上很难做到 因为你必须考虑六种情况 所选内容不在一个段落内 简单 整个选择都
  • AngularJS Youtube 播放器嵌入非常大的播放列表

    我目前正在构建一个 AngularJS 应用程序 我知道它有点过时 但我对它很有信心 我的应用程序需要嵌入一个 YouTube 播放器 其中包含一个非常大的播放列表 大约 1500 个项目 但我无法对其进行编码 以便它实际上可以嵌入超过 2
  • 将压缩的json数据存储在本地存储中

    我想将 JSON 数据存储在本地存储中 有时存储的数据可能超过 5MB 每个域的浏览器允许的最大阈值 无论如何 我可以压缩或压缩数据并将其存储在本地存储中吗 如果对大数据进行每个 JS 函数的压缩和解压 会增加多少延迟 我正在使用这个 js
  • 向 Twitter Bootstrap 添加新字体系列

    我怎样才能按照他们的方式将新的字体系列添加到 twitter bootstrap 中 他们使用一种叫做 woff 的东西 我正在尝试将 roboto 添加到 css 文件中 我怎样才能像他们那样做 woff 的事情呢 font face f
  • Node.js 连接 createServer 代码

    我正在阅读 Node js Connect 版本 2 15 0 Create a new connect server return Function api public function createServer function ap
  • 变量值的 swap() 函数[重复]

    这个问题在这里已经有答案了 我无法达到下面这个交换函数的预期结果 我希望将值打印为 3 2 function swap x y var t x x y y t console log swap 2 3 任何线索将不胜感激 您的函数正在内部交
  • 带有子节点的拖放区域

    我有一个带有多个子节点的拖放区域 主要元素有dropenter and dropleave事件 但是 如果您将文件拖动到主元素内部和子节点上方 则dropleave被触发 如何处理 以便dropleave仅当拖动的元素和鼠标位于主元素之外时
  • iOS 11 getUserMedia 不起作用?

    苹果公司发表声明称getUserMedia将在 iOS 11 上完全正常运行 安装 iOS 11 Beta 版本 5 后 我确实收到一条消息 表明我的网站请求访问我的相机和麦克风 但似乎是这样的 video src window URL c
  • Bootstrap下拉菜单文本颜色

    所以我第一次使用 Twitter 的 Bootstrap 我试图在下拉菜单折叠后更改其文本的颜色 如果有道理的话 I used 当您压缩网页以显示折叠菜单并转到下拉列表时 您会看到蓝色背景转移到下拉菜单项 但字体颜色为黑色 使其很难阅读 我
  • “WebSocket 在连接建立之前已关闭”是什么意思?

    我正在使用 JavaScript 和联盟平台 http www unionplatform com我该如何诊断这个问题 非常感谢 如果你去http jsbin com ekusep 6 edit http jsbin com ekusep
  • Electron Auth0Lock“原始文件://不允许”

    尝试让 auth0 与我的电子应用程序一起使用 当我按照默认教程并尝试使用用户名 密码 身份验证进行身份验证时 锁定失败并显示 403 错误 并响应 不允许使用 Origin file 我还在 auth0 仪表板中客户端设置的允许来源 CO
  • 保存 dat.gui 预设以动态添加控件?

    我正在向 dat gui 界面动态添加控件 但 保存设置 功能无法识别它们 var mygui new dat GUI mygui remember mygui standard way of adding a control mygui
  • 使用带有箭头的 MaterializeCSS 轮播 - 如何使用普通 javascript 进行初始化

    我正在尝试使用 MaterializeCSS 创建带有箭头的轮播 我正在尝试使用这个代码笔 https codepen io Paco Cervantes pen ZLxKpj取得有限的成功 我想使用普通的 javascript 而不是 j
  • 如何防止IE11弹出(您确定要离开此页面)

    我正在处理一个页面 除了一个下拉菜单可供选择外 我无需输入任何内容 但在 IE11 中 当我尝试转到下一页时 它会弹出该消息 我想阻止这种弹出的发生 所以我只是想知道 IE11 中弹出窗口的默认行为是什么 因为它不会出现在 Chrome 或

随机推荐

  • 使用 ocaml 图形保存图像

    我想将ocaml图形生成的图片保存在文件中 png或jpeg 谢谢 我假设你正在谈论Graphicsocaml 中的模块 您应该注意到Graphics模块不适用于创建和处理图像 你当然可以打电话Graphics dump image如果你已
  • Postgres pg_try_advisory_lock 阻止所有记录

    我在用着pg try advisory lock 在 Postgres 中 接下来的两个查询锁定了多个记录table1 1 SELECT a id FROM table1 a JOIN table2 b ON a table1 id b i
  • 什么时候不应该使用 CSS 精灵?

    我想知道什么时候不应该使用 CSS 精灵 CSS 精灵效果很好 但是在某些情况下它们会带来很多麻烦吗 和所有事物一样 它有有用的时候 也有有害的时候 许多开发人员喜欢使用 CSS sprite 因为它可以节省请求时间 浏览器发出一个请求 下
  • 在 64 位应用程序中使用为 32 位编写的汇编代码

    我可以使用以下链接中为 x86 64 计算机上的 64 位程序为 32 位 x86 编写的 Serpent 加密的汇编例程吗 也就是说 无需为其启动单独的 32 位进程 如果没有 是否有人有一个可以在 32 位和 64 位上运行的 Serp
  • 如何查找路线的所有端点(Apache Camel,Java)

    我在 Camel 上下文中有几条路线和许多端点 因此需要获取一条路由创建的所有端点 CamelContext context new DefaultCamelContext RouteBuilder route1 new RouteBuil
  • C# 进程在处置时挂起

    我正在从 C 调用命令行进程 该进程从某个远程服务器进行更新 当它可以找到远程服务器并从中获取数据时 工作正常 如果未连接到网络也可以正常工作 但是 当远程服务器无法访问时 外部进程将无限期地尝试获取数据 并且没有命令行选项来指定超时 所以
  • 如何从目标获取包含目录以在 add_custom_target 中使用?

    我正在建模依赖关系target link libraries 正如在this https pabloariasal github io 2018 02 19 its time to do cmake right 博客文章 target li
  • 如何使用Mercurial进行文本文档的版本控制?

    这不完全是一个编程问题 但我认为它比在TeX组 https tex stackexchange com 我想使用版本控制来跟踪文本文件的更改 用于创建LaTeX输出 由于我不是程序员 所以我对版本控制系统还没有更深入的经验 我想用Mercu
  • 数据表服务器端人口

    我花了几个小时试图找到如何使用来自后端的 json 填充数据表 这是我的代码
  • ValueError:预期目标大小 (128, 44),得到 torch.Size([128, 100]),LSTM Pytorch

    我想建立一个模型 根据前面的字符预测下一个字符 我已将文本拼接成长度 100 的整数序列 使用数据集和数据加载器 我的输入和目标变量的维度是 inputs dimension batch size sequence length In my
  • 如何从两个 URL 解析两个 XML 文件(Swift)

    我有两个 XML URL 第一个 URL 显示SongName on the Table第二个 URL 是SongPath 当我点击SongName在桌子上它转到SongPath在第二个网址中 这是table https i stack i
  • SSL:400 未发送所需的证书

    代码和输入 我正在尝试建立 SSL 连接 但我得到了400 No required SSL certificate was sent来自服务器的响应 我正在以标准方式执行此操作 例如所描述的here https stackoverflow
  • Scala 中finally 块的返回值[重复]

    这个问题在这里已经有答案了 可能的重复 scala 中的 return 和 try catch finally 块评估 https stackoverflow com questions 8443743 return and try cat
  • 带有导航组件的 BottomNavigationView - 选定的片段未显示

    我目前正在迁移到 android 导航组件 并且在 BottomNavigationView 中选择新项目时无法使片段转换正常工作 我按照官方文档中的说明进行操作 没有发现所选片段未显示的任何问题 在activity的onCreate方法中
  • 如何正确输出闪亮的Plotly图?

    我正在尝试根据纽约犯罪历史数据制作一个闪亮的应用程序 我正在使用单闪亮页面方法 这是数据 https data world data society nyc crime data https data world data society
  • 为什么 IronPython 告诉我 pip 是一个包而不是可执行文件?

    我是 Python 的新手 我想尝试看看 Pyomo 用于数学建模的 Python 包 是否可以在 IronPython 下工作 因为我用于生成 Pyomo 所需数据的所有代码都是用 C 编写的 我安装了 IronPython 2 7 5
  • Microsoft.Identity.Web:未触发 OnTokenValidated 事件

    我想做的是在身份验证后添加声明 以下是注册的示例OnTokenValidation事件并不能解决问题 该事件永远不会触发 我在用着Microsoft Identity Web在 Azure AD B2C 上进行身份验证 那部分有效 我如何使
  • 如何使用net.sf.json在Java中生成JSON字符串?

    我正在努力用 Java 生成 JSON 字符串 import net sf json JSONArray import net sf json JSONObject JSONArray ja new JSONArray JSONObject
  • Anki - 我应该挂钩什么来添加我自己的字段描述符?

    类似于 field and text field 我正在尝试创建我自己的字段描述符 为了做到这一点 我需要知道要挂钩什么函数 我不知道 Anki 是否将卡片预编译为 HTML 或在学习过程中即时生成它们 所以我不知道从哪里开始寻找这个功能
  • 如何以编程方式打开 Bootstrap 下拉菜单

    当我单击另一个下拉列表中的项目时 我试图打开 Bootstrap 下拉列表 这个想法是从第一个下拉列表中选择一个城市 然后脚本将自动打开第二个包含区域的下拉列表 并仅显示与所选城市相对应的区域 这是我的JS sidebar filter c