首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js如何获取二级菜单的数值

在JavaScript中获取二级菜单的数值通常涉及到DOM操作。以下是一个基本的示例,假设你的HTML结构如下:

代码语言:txt
复制
<ul id="menu">
  <li>菜单1
    <ul>
      <li>子菜单1-1</li>
      <li>子菜单1-2</li>
    </ul>
  </li>
  <li>菜单2
    <ul>
      <li>子菜单2-1</li>
      <li>子菜单2-2</li>
    </ul>
  </li>
</ul>

你可以使用以下JavaScript代码来获取所有二级菜单的文本内容:

代码语言:txt
复制
// 获取一级菜单的ul元素
var menu = document.getElementById('menu');

// 获取所有的二级菜单li元素
var subMenus = menu.querySelectorAll('li > ul > li');

// 遍历二级菜单并打印其文本内容
subMenus.forEach(function(subMenu) {
  console.log(subMenu.textContent);
});

这段代码首先通过getElementById获取到一级菜单的ul元素,然后使用querySelectorAll选择器找到所有直接嵌套在一级菜单li元素下的ul中的li元素,这些就是二级菜单。最后,使用forEach遍历这些二级菜单,并通过textContent属性获取它们的文本内容。

如果你需要获取的是二级菜单的其他数值,比如自定义的数据属性(data-*),你可以使用类似的方法:

代码语言:txt
复制
<ul id="menu">
  <li>菜单1
    <ul>
      <li data-value="1-1">子菜单1-1</li>
      <li data-value="1-2">子菜单1-2</li>
    </ul>
  </li>
  <!-- ... -->
</ul>
代码语言:txt
复制
var subMenus = menu.querySelectorAll('li > ul > li');
subMenus.forEach(function(subMenu) {
  console.log(subMenu.getAttribute('data-value'));
});

在这个例子中,我们使用getAttribute方法来获取每个二级菜单元素的data-value属性值。

这种方法适用于静态HTML结构。如果你的菜单是动态生成的,或者你需要处理更复杂的交互逻辑,可能需要使用事件监听器或其他JavaScript框架(如React、Vue等)来管理菜单的状态和行为。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • JS-鼠标经过显示二级菜单

    会在加完120后再执行,没想到他先执行的这个,并且弹出ullistElement,即说明他找到了subNav的ul, 问题来了,当加载完成后,请你尝试把鼠标再放到二级菜单上移动一下,你没选择一个二级菜单...,他就是把这三个alert再执行一遍,然后你就会看到ul的长度又加了20,当你不停的上下晃动鼠标,二级菜单就会不停的添加。...原因:这里,通过这个代码:alert(aLi.length);原因就明显了,因为开头的aLi,获得的是body中所有的li,包括二级菜单的。...就是说你在二级菜单的每一个li上晃一下,他都会认为你是在重新执行了aLi.onmouseover这个代码,流程就再走了一遍。...难道是要给ul一个id,然后通过id获得ul下的li集合,再判断谁有二级菜单进行显示   解决2:高度处,在判断那里,如果高度大于120了,我们就直接让高度等于120,不就得了,以后他再长,也会被这一条限制住

    8.2K100

    Ionic如何实现单选二级菜单切换

    Ionic如何实现单选二级菜单切换 最近有个需求,需要做一个用户视图,数据全都从PC端系统实时取,由于这个功能在电脑浏览器展示还可以,即使菜单全部展开,只要美工稍加调整下位置也是放得下的,但是同样的功能让...App页面宽度比较窄显示列表比较轻松,就做了个弹窗,需要说明的是这个弹窗点击一级菜单展开当前一级下面的二级菜单,点击二级菜单即是选择,然后关闭弹窗切换主页面内容。...这个功能有两个难点: 其一是ionic的模态框modal框貌似不能动态传参     其二是菜单切换需要单选,因为需要各一个right(打勾)标示当前项   对于第一个问题,我的解决方法是主页面初始化时将弹窗内的数据一次性获取放在...第二个问题解决方法也很费力,大多数时候做个一级多选项单选切换十分容易,做个二级就困难重重啦,要知道ionic的item、ion-item、ion-list都是有语义,随便写的话 二级菜单不能显示 此功能就废掉了...,一级的时候选项切换 radio是放在label里面的,一个套label就是一个选项,label需要在同一级,做二级单选的时候需要将一级选项的对应的二级选项全都放在当前一级label里面(而且是当前二级全部选项哦

    1.7K90

    怎样保持下拉菜单并截图?如何快速截图二级菜单?

    就像上面这样的截图你知道要怎么截吗?...可以将浏览器最小化,打开任意软件点击任一下拉菜单,然后按住“Ctrl+Shift+X”,会发现鼠标指针已经变成彩色,就可以截图了。...QQ截图 QQ截图步骤可能相对比较繁琐,但介于有时候聊天需求,笔者也跟大家分享下自己学的方法吧。...(这点可根据你的想法自己设定,只要不跟其它热键冲突,即可) 3.截图前,先按住“Shift+Alt+Ctrl”键,然后鼠标点击,显示下拉菜单。...4.下拉菜单出来以后,松手Shift,继续按住Ctrl+Alt键不放,同时再按住A键。(因为笔者设置的快捷键是“Ctrl+Alt+A”).这时鼠标指针就变成彩色,可以截图了。

    2.3K20

    jQuery二级菜单的显示隐藏

    在jQuery中创建二级菜单的显示和隐藏可以通过使用事件处理函数和CSS样式来实现。HTML 结构 首先,需要创建适当的HTML结构来表示二级菜单。一种常见的方法是使用嵌套的和元素。...上述示例中,我们创建了一个包含两个菜单项和对应的二级菜单的导航栏。...每个菜单项都包含一个链接,以及一个嵌套的无序列表来表示二级菜单。CSS 样式 接下来,需要使用CSS样式来控制二级菜单的显示和隐藏。可以通过设置样式的display属性来实现。...然后,通过为父级菜单项设置:hover伪类选择器,当鼠标悬停在菜单项上时,显示相应的二级菜单。...当鼠标进入菜单项时,使用slideDown()方法显示相应的二级菜单。当鼠标离开菜单项时,使用slideUp()方法隐藏二级菜单。

    3.3K30

    【javaScript案例】之二级菜单的制作

    这次实现的效果图如下: 二级菜单.gif 这个二级菜单实现的效果是: 当点击某一个框时,会将已经打开的框的内容收回,再展开现在点击的框的内容。 要如何实现这个效果呢?...但是要注意不要所有的框都拿一种类型的盒子做,因为那样不方便写js代码,毕竟我们之后的操作是点击绿色的框=>使得收起或展开白色的框,所以我们需要为每一个天数+对应课程的框放在一个div父盒子下。...span的onclick响应函数中通过parentNode获取其对应的父盒子,使其父盒子的高度变为其scrollHeight的值 然后我们需要在点击span使某盒子展开的时候,将已经展开的盒子收起。...这时我们就需要一个变量now来记录上次被点击的盒子,令其初值为null,若now不等于当前点击的span,则获取now的父盒子,令其高度变为span的高度,然后令当前点击的span展开(第二点已经讲了怎么展开...);若now等于当前点击的span,获取其父盒子的高度,如果等于span的高度,则令其高度变为scrollHeight的值,否则令其变为span的高度 设置定时器,在准备将父盒子高度增加或减少的时候调用

    63120

    Excel: 设置动态的二级下拉菜单

    本文要讲述的是如何通过offset、match和counta函数,得到动态的二级下拉菜单。...省份列,可以设置一级菜单;城市列,希望根据输入的省份,自动产生相应的城市供用户输入,这个可以通过设置二级菜单来实现。...基于给定的参数表(参数表内的数据后期可以动态增加),下面就来介绍一级菜单和二级菜单的设置。 2 一级菜单设置 (1) 定义单元格名称 省份:OFFSET(参数表!...在进行二级菜单的设置时,发现网上有不少文章提到,可以通过INDEX 函数来实现。如果每次二级菜单引用的单元格区域是固定的,那么确实可以通过INDEX 函数来实现。...support.microsoft.com/zh-cn/office/index-%E5%87%BD%E6%95%B0-a5dcf0dd-996d-40a4-a822-b56b061328bd) [6] Excel里面如何建立二级下拉菜单

    4.9K10

    MyBatis获取参数值的方式(一)

    MyBatis是一个优秀的持久层框架,它支持多种方式获取参数值。...一、获取单个参数值在MyBatis中,获取单个参数值的方式有很多种,其中常见的方式如下:使用#{param}占位符获取参数值使用#{param}占位符可以获取单个参数值,其中param表示参数的名称。...使用$占位符获取参数值使用$占位符也可以获取单个参数值,其中$表示参数值,可以直接替换成参数的值。...二、获取多个参数值在MyBatis中,获取多个参数值的方式也有很多种,其中常见的方式如下:使用Map集合获取参数值使用Map集合可以获取多个参数值,其中Map的key表示参数的名称,value表示参数的值...使用JavaBean获取参数值使用JavaBean可以获取多个参数值,其中JavaBean的属性名表示参数的名称,属性值表示参数的值。

    46320
    领券