我的菜单中有一个下拉菜单,但是当我单击下拉菜单中的搜索表单字段时,下拉菜单会立即关闭。
这是我的代码:
<button id="sharebutton" type="button" class="btn btn-sm btn-info" data-toggle="dropdown" data-hover="dropdown"
data-close-others="true"><i class="fa fa-search"></i> Search
</button>
<ul class="dropdown-menu extended notification">
<li>
<div class="form-group">
<?php echo $this->Form->create('Search', array('controller' => 'searches', 'action' => 'prodsearch')); ?>
<div class="input-group">
<?php echo $this->Form->input('newsearchterm', array('required' => true, 'class' => 'form-control', 'label' => false, 'placeholder' => 'Search Products...', 'name' => 'newsearchterm')); ?>
<span class="input-group-btn">
<?php
echo $this->Form->button(
'<i class="fa fa-search"></i>',
array(
'type' => 'submit',
'class' => 'btn blue',
),
array('escape' => 'false')
);
?>
</span>
</div>
</div>
<?php echo $this->Form->end(); ?>
</li>
</ul>
(我使用的是 CakePHP,这就是表单代码有点滑稽的原因)
最佳答案
将 stopPropagation()
添加到您的搜索表单字段。
jQuery('.your-form-selector').click(function (e) {
e.stopPropagation();
});
其他一切都会按预期工作。
我只是在寻找同样的东西并在 here 找到了它
关于javascript - 下拉列表中的 Bootstrap 搜索表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21517947/