在其中单击时防止 materializecss 下拉菜单关闭

IT技术 javascript jquery reactjs materialize
2021-05-26 16:15:32

我正在为当前项目使用 Materialize.css,并且我在其中有一些输入表单的下拉列表。

下拉菜单可以选择关闭:

  • 点击外面 .dropdown-content
  • 点击里面 .dropdown-content
  • 点击 .dropdown-button

我需要的是在点击它内部时不要关闭,因为我需要能够填写输入表单和其他操作。

这是一个简单的例子

2个回答

快速解决方案是在单击内容包装器时停止传播。

$('.dropdown-button + .dropdown-content').on('click', function(event) {
  event.stopPropagation();
});

对于这个特定的用例,我会避免使用“下拉”。但是,如果您想坚持下去,只需应用上面的代码段即可。

例如,您可以使用:

$('#first_name').click(function (event) {
    event.stopPropagation();
    //Do whatever you want
});

避免由输入产生的事件first_name传播。下拉列表不会检测到它,因此它不会被关闭。