首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bootsrap jquery下拉菜单-如何在内容区域中显示数据值

Bootsrap jquery下拉菜单-如何在内容区域中显示数据值
EN

Stack Overflow用户
提问于 2019-11-24 23:49:05
回答 1查看 26关注 0票数 0

有人能帮个忙吗?我的目标是通过jquery创建一个Bootstrap下拉框。一切都很好,除了最后一位、数据值域到.menu的输出、

内容。

JS小提琴在这里:http://jsfiddle.net/schllrcgn/0yzru5va/75/

如有任何帮助,我们不胜感激!非常感谢!

代码语言:javascript
复制
$(document).ready(function(){
var classes = ['.DDFProjectTopics'];
for (i = 0; i < classes.length; i++) {
    $(classes[i]).wrapAll('<ul class="dropdown-menu">')
}
});
$(document).ready(function(){
$( ".dropdown-menu" ).before( '<form><div class="btn-group"><a class="btn dropdown-toggle btn-select" data-toggle="dropdown" href="#">Topics&nbsp;<span class="caret"></span></a>');
});
$(document).ready(function(){
$('<p class="menu">content</p>').insertAfter('.btn-group');
});
$(document).ready(function(){
$('.dropdown-menu').insertAfter('.btn');
});
$(".dropdown-menu li a").click(function(){
  var selText = $(this).attr('data-value');
    $(this).parents('.btn-group').siblings('.menu').html(selText)
});
代码语言:javascript
复制
.menu{
    margin: 40px;
border: 1px solid blue;
height: 50px
;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>


<li class="DDFProjectTopics"><a href="#" data-value="this is the story">1</a></li>
 <li class="DDFProjectTopics"><a href="#" data-value="this can be <b>html</b>">2</a></li>
 <li class="DDFProjectTopics"><a href="#" data-value="action-3">Item III</a></li>
EN

回答 1

Stack Overflow用户

发布于 2019-11-25 07:03:08

我建议使用以下函数。记住在你的提琴中也要使用HTTPS。

https://jsfiddle.net/Twisty/byk9p2rm/23/

JavaScript

代码语言:javascript
复制
$(function() {
  function makeDropDown(tObj) {
    var wrapper = $("<div>", {
      class: "btn-group"
    }).insertBefore(tObj);
    var btn = $("<button>", {
      class: "btn btn-secondary dropdown-toggle",
      type: "button",
      "data-toggle": "dropdown",
      "aria-haspopup": "true",
      "aria-expanded": false
    }).html("Topics").appendTo(wrapper);
    var menu = $("<ul>", {
      class: "dropdown-menu",
    }).appendTo(wrapper);
    var items = tObj.children();
    items.each(function(i, el) {
      $(el).detach().appendTo(menu);
    });
    tObj.remove();
    var cnt = $("<p>", {
      class: "menu"
    }).html("Content").insertAfter(wrapper);
    $("a", items).click(function(e) {
      e.preventDefault();
      var txt = $(this).data("value");
      cnt.html(txt);
    });
  }

  makeDropDown($(".items"));
});

你只需要在Ready上运行一个函数,它就会执行其中的所有代码。基于以下示例,此函数在为<ul>制作下拉包装器时非常特殊:https://getbootstrap.com/docs/4.0/components/dropdowns/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59019461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档