javascript - 显示下拉列表中选择的内容 : Bootstrap

标签 javascript html bootstrap-4

我有以下 HTML,

<!DOCTYPE html>
<html>
<head>
  <title>Bootstrap Example</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
</head>
<body>

<div class="container">
  <div class="dropdown">
    <button type="button" class="btn btn-warning dropdown-toggle" data-toggle="dropdown">
      Dropdown button
    </button>
    <div id="custom" class="dropdown-menu">
      <a class="dropdown-item" href="#">Normal</a>
      <a class="dropdown-item" href="#">Active</a>
      <a class="dropdown-item" href="#">Disabled</a>
    </div>
  </div>
</div>

<script>
document.getElementById('custom').addEventListener("click", myFunction);

function myFunction() {
  alert(this.textContent);
}
</script>

</body>
</html>

我正在尝试 alert并设置button文本到 drop-down 中选择的内容.

我可以通过将 id 设置为 dropdown-item 来获取该值并用JS读取它。但是我有n个dropdown-item ,所以添加id是不可行的。

jQuery中有可用的解决方案但我怎样才能在不使用 jQuery 的情况下做到这一点? 。 ?

最佳答案

您可以访问目标元素的 innerHTMLinnerText 属性:

document.getElementById('custom').addEventListener("click", myFunction);

function myFunction(e) {
  alert(e.target.innerText);
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>

<div class="container">
  <div class="dropdown">
    <button type="button" class="btn btn-warning dropdown-toggle" data-toggle="dropdown">
      Dropdown button
    </button>
    <div id="custom" class="dropdown-menu">
      <a class="dropdown-item" href="#">Normal</a>
      <a class="dropdown-item" href="#">Active</a>
      <a class="dropdown-item" href="#">Disabled</a>
    </div>
  </div>
</div>

关于javascript - 显示下拉列表中选择的内容 : Bootstrap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57054715/

相关文章:

html - 在 CSS 中提取和缩放图像的一部分

jquery - 如何将文本行放在图像标签下?

javascript - bootstrap-grid 使用 jquery 吗?

css - 去除 input 标签下的灰色区域

javascript - 使用 jQuery 将 html 代码插入 Primefaces 对话框

表单重置按钮需要 Javascript

javascript - jQuery 自动完成不适用于键值对数组

javascript - 根据用户选择的 Tinymce 加载按钮

javascript - 如何使用 Jquery 为具有多个类的按钮的背景颜色设置动画?

javascript - 如何选择引导日期选择器值并将其与多个日期的日历 View 中的表单一起发布