javascript - Bootstrap 选择菜单 - 添加新选项

标签 javascript jquery html css twitter-bootstrap

我有一个带有选择输入的简单 Bootstrap 表单:

<div class="form-group">
  <label for="category" class="control-label col-sm-3">Category</label>
  <div class="input-group col-xs-8">
    <select class="form-control" name="category" id="category">
      <option value="Fruit">Fruit</option>
      <option value="Vegetables">Vegetables</option>
    </select>
  </div>
</div>

用户现在需要能够向选择菜单动态添加新选项,而不是仅限于选择菜单上的元素。

我不确定是否可以修改选择菜单以及如何使其与 Bootstrap 框架的其余部分保持一致?

最佳答案

要动态添加选项,应该有一个 UI 按钮供您选择。要获取用户输入,我们可以使用 window.prompt 方法。

然后我们创建一个选项元素,设置它的值属性并设置它的名字。然后使用 appendChild

将这些元素和节点附加到 DOM

试试这个。我加了一些东西,比如牛排、土 bean 和啤酒。

var addOption = document.getElementById("add-option");
var selectField = document.getElementById("category");
addOption.addEventListener("click", function() {
    var item = prompt("What would you like");
    var option = document.createElement("option");
    option.setAttribute("value", item);
    var optionName = document.createTextNode(item);
    option.appendChild(optionName);
    selectField.appendChild(option);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/>

<div class="form-group">
  <label for="category" class="control-label col-sm-3">Category</label>
  <div class="input-group col-xs-8">
    <select class="form-control" name="category" id="category">
      <option value="Fruit">Fruit</option>
      <option value="Vegetables">Vegetables</option>
    </select>
  </div>
</div>

<button id="add-option" class="btn btn-primary">Add a new option</button>

关于javascript - Bootstrap 选择菜单 - 添加新选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37815200/

相关文章:

javascript - 在复选框中选中的 Jquery DOM 设置适用于 true 而不是 false

html - 使用 flexbox 垂直间隔列表和子列表项

html - 将背景放在另一个下方的 div

javascript - 为什么我的页面加载 php 文件?

javascript - 在 Jquery 中使用 HAML 而不是 HTML 文件是否会更改 onclick 函数的输入?

javascript - 将传单中的自定义图标添加到 geojson 文件

javascript - DataTables - 按图像的替代字符串对列进行排序

javascript - 如何从JS更改输入类型日期的最大值或最小值

javascript - codeigniter 中 Ajax Jquery 文件上传错误

javascript - 如何设置要在 Netsuite 的列表 Portlet 中显示的行数?