单击时,选择元素立即关闭

时间:2016-05-26 14:23:09

标签: javascript jquery html select hide

我的页面中有几个这样的选择元素

<div class="question_input_type_selector selector_div hide">
    <select class="custom-dropdown input_type_selector">
       <option value="multiple_choice" default="" selected="">Escolha Múltipla</option>
       <option value="scale_input">Escala</option>
       <option value="grid_input">Grelha de escolha múltipla</option>
       <option value="text">Texto</option>
       <option value="checkboxes">Caixas de verificação</option>
    </select>
</div>

如果我不做任何事情,它可以正常工作。但是当我使用.hide()隐藏div然后再次使用.show()显示时,所有选择元素都会停止正常工作。每次我点击其中一个,它立即打开和关闭,无法选择一个选项。保持打开的唯一方法是单击它,在按住按钮的同时将鼠标拖动到其他位置,然后才释放它。

我已经尝试了所有的东西,并且用Google搜索了我能做的所有事情,并且无法找到解决方案。 谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

最后,我找到了导致这个问题的原因。

每次我点击选择所在的div内部时,我都会调用一个隐藏所有div的函数,并仅显示所单击的div。因此,我无法看到div消失并出现,因为这两个事件是同时发生的,但div在选择打开后立即消失的事实导致select元素立即关闭。

解决方案是添加一个条件并调用该函数,只有在点击的div尚未聚焦时才隐藏所有div。