javascript - 如何使用 jQuery 将列表项添加到列表中?

标签 javascript jquery html twitter-bootstrap

尝试使用 Jquery 将下拉列表动态加载到 Bootstrap 下拉列表,知道下面的代码是否有任何问题?

main.html

<div class="form-group">
    <div class="row">    
        <div class="col-md-6" class="form-control">
            <div class="btn-group dropright">
                <button type="button" class="btn btn-secondary btn-lg dropdown-toggle" data-toggle="dropdown" aria-haspopup="true"  aria-expanded="false">
                   Select Clients
                </button>
            <div class="dropdown-menu">
                <ul class="dropdown-menu" id="projectSelectorDropdown"></ul>
            </div>
        </div>
    </div>
</div>

main.js

(function dropdDOwndata(){

        var data = [{
            id: 1, 
            name: "Voyage"
        },
        {
            id: 2, 
            name: "SDK"
        },
        ]
        $('.dropdown-menu a').click(function () {           
           $('#projectSelectorDropdown').val(data);
        });

}());

最佳答案

您需要为数组中的每个数据元素创建列表项。像这样的东西应该有效:

$(function() {
  var data = [
    {
      id: 1,
      name: "Voyage"
    },
    {
      id: 2,
      name: "SDK"
    }
  ];

  $("#projectSelectorDropdown")
    .empty()
    .append(
      data.map(d => `<li><a data-id=${d.id} href='#'>${d.name}</a></li>`)
    );

  $(".dropdown-menu a").click(function(e) {
    console.log(e);
  });
});

参见: https://codepen.io/tyschroed/pen/WNNNaoo?editors=0010

关于javascript - 如何使用 jQuery 将列表项添加到列表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58241729/

相关文章:

javascript - 无法使用 yield 评估 js 代码

javascript - 具有相同类的对象有时不会隐藏

javascript - 如何为 FullCalendar 中的每个事件添加 rel 属性?

php - 重写规则重定向文件夹

html - 如何从 HTML 页面中的不同元素设置不同的悬停属性?

javascript - 无法在 Angular 中创建抽象类的实例,但在 JS 中工作正常

javascript - 数组 : how to push all elements forward by one with javascript 中的数组

javascript - 在新窗口打开的 Web 资源中使用 Xrm.WebApi 方法

javascript - 如何在 firefox 控制台中查看 xml 对象

javascript - 是否可以在 Visual Studio 之外的不同 IDE 中开发 Win8 应用程序?