Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何通过编程将引导下拉列表更改为特定状态?_Javascript_Twitter Bootstrap - Fatal编程技术网

Javascript 如何通过编程将引导下拉列表更改为特定状态?

Javascript 如何通过编程将引导下拉列表更改为特定状态?,javascript,twitter-bootstrap,Javascript,Twitter Bootstrap,在我看到的文档中,我可以通过执行以下操作以编程方式切换下拉列表: $().dropdown('toggle') 这很好,但如果我想下拉显示或不显示呢?有没有办法做到这一点 $().dropdown('show') $().dropdown('hide') 我对你的问题有点困惑。调用$()。下拉列表('toggle')将反转下拉列表的状态。例如,如果下拉列表被隐藏,它将显示下拉列表;或者隐藏下拉列表(如果打开) 除了切换之外,没有其他方法可以为下拉菜单调用 编辑:您可以注册一些其他实例事件(例

在我看到的文档中,我可以通过执行以下操作以编程方式切换下拉列表:

$().dropdown('toggle')
这很好,但如果我想下拉显示或不显示呢?有没有办法做到这一点

$().dropdown('show')
$().dropdown('hide')

我对你的问题有点困惑。调用
$()。下拉列表('toggle')
将反转下拉列表的状态。例如,如果下拉列表被隐藏,它将显示下拉列表;或者隐藏下拉列表(如果打开)

除了
切换
之外,没有其他方法可以为下拉菜单调用


编辑:您可以注册一些其他实例事件(例如
show.bs.dropdown
,因此您可以使用代码检查下拉列表是否正在显示,但除了使用
切换
(如上所述)之外,无法直接调用它)

似乎不可能:dropdown插件似乎只有两个公共方法(
toggle
keydown
)。和
toggle
不接受任何用于仅自定义事件的参数

自己看一看源代码:

根据定义,引导下拉列表的唯一方法是
toggle
。但是,您可以使用
aria expanded
属性查看下拉列表是否展开。例如,如果您想“隐藏”所有下拉列表,您可以执行以下操作:

$(".dropdownClass").each(function(){
   if($(this).attr("aria-expanded") == true) //depending on your jQuery version you may want to use .prop() instead of .attr()
      $(this).dropdown('toggle');
});

我想将其设置为已知状态,而不是切换状态。例如,我正在动态填充选项,如果有选项,则应将其显示为打开状态,如果没有选项,则应将其显示为关闭状态。@Sgraffite那么您只需在填充菜单后调用
切换
方法即可。或者添加在这个问题上添加更多的源代码将有助于生成更有针对性的答案?我最后做了类似的事情。这看起来有点像黑客,但效果不错。