VUE联动下拉选择框

2023-11-05

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .main {
            width: 500px;
            margin: 50px auto;
            padding: 15px;
            background-color: antiquewhite;
        }
        .item>p {
            display: inline-block;
            margin-right: 10px;
            width: 100px;
            text-align: right;
        }
        .item>select {
            min-width: 100px;
        }
    </style>
</head>
<body>
    <div class="main">

        <div class="item">
            <p>项目名称</p>
            <select v-model="entryValue" @change="entryChange">
                <option v-for="item in mapData" :key="item.entryId" :value="item.entryId" :lable="item.entry">
                    {{item.entry}}
                </option>
            </select>
        </div>
        
        <div class="item">
            <p>标段名称</p>
            <select v-model="sectionValue" @change="sectionChange">
                <option v-for="item in sectionOptions" :value="item.sectionId" :lable="item.section">
                    {{item.section}}
                </option>
            </select>
        </div>

        <div class="item">
            <p>参与安全员</p>
            <select v-model="personValue">
                <option v-for="item in personOptions" :value="item.personId" :lable="item.person">
                    {{item.person}}
                </option>
            </select>
        </div>
        
        <p>选中的项目名称ID为:{{entryValue}},标段名称ID为:{{sectionValue}},参与安全员ID为:{{personValue}}</p>
        <h3>选中的项目名称entryValue: {{entryValue}}</h3>

    </div>
    
    <script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.11/vue.js"></script>
    <script>
        var vueMain = new Vue({
            el: '.main',
            data: {
                mapData: [
                    {
                        entryId: '1',
                        entry: '项目1',
                        sectionArr: [
                            {
                                sectionId: '1-1',
                                section: '项目1标段1',
                                personArr: [
                                    {
                                        personId: '1-1-1',
                                        person: '项目1标段1安全员1'
                                    },
                                    {
                                        personId: '1-1-2',
                                        person: '项目1标段1安全员2'
                                    },
                                    {
                                        personId: '1-1-3',
                                        person: '项目1标段1安全员3'
                                    },
                                ]
                            },
                            {
                                sectionId: '1-2',
                                section: '项目1标段2',
                                personArr: [
                                    {
                                        personId: '1-2-1',
                                        person: '项目1标段2安全员1'
                                    },
                                    {
                                        personId: '1-2-2',
                                        person: '项目1标段2安全员2'
                                    },
                                    {
                                        personId: '1-2-3',
                                        person: '项目1标段2安全员3'
                                    },
                                ]
                            }
                        ]
                    },
                    {
                        entryId: '2',
                        entry: '项目2',
                        sectionArr: [
                            {
                                sectionId: '2-1',
                                section: '项目2标段1',
                                personArr: [
                                    {
                                        personId: '2-1-1',
                                        person: '项目2标段1安全员1'
                                    },
                                    {
                                        personId: '2-1-2',
                                        person: '项目2标段1安全员2'
                                    },
                                    {
                                        personId: '2-1-3',
                                        person: '项目2标段1安全员3'
                                    },
                                ]
                            },
                            {
                                sectionId: '2-2',
                                section: '项目2标段2',
                                personArr: [
                                    {
                                        personId: '2-2-1',
                                        person: '项目2标段2安全员1'
                                    },
                                    {
                                        personId: '2-2-2',
                                        person: '项目2标段2安全员2'
                                    },
                                    {
                                        personId: '2-2-3',
                                        person: '项目2标段2安全员3'
                                    },
                                ]
                            }
                        ]
                    }
                ],
                // 标段下拉项数组
                sectionOptions: [],
                // 安全员下拉项数组
                personOptions: [],
                // 项目选中值
                entryValue: '',
                // 标段选中值
                sectionValue: '',
                // 安全员选中值
                personValue: ''
            },
            methods: {
                entryChange() {
                    const item = this.mapData.find(item => item.entryId == this.entryValue)
                    this.sectionOptions = item.sectionArr
                    this.sectionValue = ''
                    this.personValue = ''
                },
                sectionChange() {
                    const item = this.sectionOptions.find(item => item.sectionId == this.sectionValue)
                    this.personOptions = item.personArr
                    this.personValue = ''
                }
            }
        })
    </script>
</body>
</html>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VUE联动下拉选择框 的相关文章

随机推荐

  • 用audition让声音更加好听

    用audition让声音更加好听 用audition让声音更加好听 用audition让声音更加好听 用audition打声音 点击如下图 选择如下 参数均衡器 把曲线弄成 V 字形 就很好听了 记得在导出之前要点击 应用 这样才生效 如下
  • 服务器硬件测试 如何查看系统信息及测试使用工具

    硬件长稳 一 查看硬件信息 sar sar命令 好一个大宝剑 7750783的技术博客 51CTO博客超全 使用 yum install sysstat 命令安装 sar命令来对系统作一个了解 该命令是系统维护的重要工具 主要帮助我们掌握系
  • 【小5聊】Postman设置环境变量之不同的IP或域名切换变量

    1 点击右上角的齿轮 2 添加环境变量 设置一个名称 比如本地环境 3 点击本地环境 进入添加参数变量和值 4 选择本地环境变量 5 点击请求即可 一句话一感想一心情 版本更新 增加测颜值推荐图文 来体验下句子的魅力
  • 李航感知机对偶形式python代码

    author xinxinzhang import numpy as np def loadData 加载数据 X np mat 3 3 4 3 1 1 Y 1 1 1 return X Y def Gram X 计算Gram矩阵 m n
  • Elasticsearch检索分类深入详解—基础篇

    题记 Elasticsearch中当我们设置Mapping 分词器 字段类型 完毕后 就可以按照设定的方式导入数据 有了数据后 我们就需要对数据进行检索操作 根据实际开发需要 往往我们需要支持包含但不限于以下类型的检索 1 精确匹配 类似m
  • apisix攻击面

    0x00 APISIX 运行环境安装编译 openssl openresty configure prefix usr local openresty with pcre jit with ipv6 without http redis2
  • JSONException: syntax error, expect [, actual string, pos 0, fieldName null

    通过接口拿到了json字符串 然后使用下面的方式解析报错 JSONArray parseArray JSON toJSONString data getAuditDetail 明明是符合规范的格式 但是 后来发现问题的根源就是json字符串
  • javascript 去掉小数末尾多余的零

    最近做项目需要对金额进行千分位处理的同时 保留多位小数 但是 小数部分不得为零 let num1 995092130000000 100000000000 let res1 num1 toFixed 12 document write re
  • python 函数的基础操作,看完大家都可以创建函数 ^o^/

    目录 函数简介 函数返回结果的两种方法 形参的三种类型 必选参数 默认参数 不定长参数 函数返回值 return 内置函数 函数简介 在python里什么是函数 函数又被称为方法 是指某一段聚合在一起 做特定的事情的代码 创建一个函数需要哪
  • typora使用picgo配置sftp上传图片

    mdftp 上传到uploadPath这个目录下 host 0 0 0 0 port 22 username root password uploadPath uploads year month fullName 返回的图片链接为 url
  • AcWing 1353. 滑雪场设计

    农夫约翰的农场上有 N 个山丘 每座山的高度都是整数 在冬天 约翰经常在这些山上举办滑雪训练营 不幸的是 从明年开始 国家将实行一个关于滑雪场的新税法 如果滑雪场的最高峰与最低峰的高度差大于17 国家就要收税 为了避免纳税 约翰决定对这些山
  • idea中 git版本回退

    1 版本回退 之 Reset Type 有四种 1 1 soft 移动本地库HEAD指针 意思就是 回滚后 仅仅是把本地库的指针移动了 而暂存区和你本地的代码是没有做任何改变的 而你上次改动已提交committed到本地库的代码显示是绿色即
  • 《数值分析》-- 拉格朗日插值

    文章目录 问题 一 拉格朗日插值基函数 二 拉格朗日插值多项式 三 n次Lagrange插值多项式余项 习题 总结 问题 一 拉格朗日插值基函数 n 1时一次基函数 两点线性插值问题 问题 即已知函数 f x 在点 x 0 x 0
  • 88. 合并两个有序数组 golang

    88 合并两个有序数组 给你两个有序整数数组 nums1 和 nums2 请你将 nums2 合并到 nums1 中 使 nums1 成为一个有序数组 说明 初始化 nums1 和 nums2 的元素数量分别为 m 和 n 你可以假设 nu
  • 驱动接口函数调用过程

    本文就来揭秘一下到底一个驱动的接口函数是如何被调用的 首先我们来反汇编读驱动的程序 跳转到 libc read 发现他把r7赋值给3 3是传过去的参数 然后调用svc指令 进入内核态相应的入口 接下来就已经进入内核态 入口函数中将存入r7中
  • Windows 10 更新后无法安装共享打印机(0x0000011b)

    windows 10 前段时间更新之后突然无法连接共享打印机 出现报错0x0000011b的错误 很多人都是用卸载补丁KB5005569 KB5005573 KB5005568 KB5005566 KB5005565 这确实能暂时解决问题
  • 原生微信小程序 计算属性 wxs

    原生微信小程序 计算属性 wxs WXS官方文档 WXS 不依赖于运行时的基础库版本 可以在所有版本的小程序中运行 WXS 与 JavaScript 是不同的语言 有自己的语法 并不和 JavaScript 一致 WXS 的运行环境和其他
  • gpio相关介绍

    GPIO 通用输入输出端口 gpio的基本输出功能由STM32控制引脚输出高 低电平 实现开关控制 最基本的输入功能是检测外部输入电平 gpio工作模式 输入模式 上拉 下拉 浮空 在输入模式中 施密特触发器打开 输出被禁止 数据寄存器每隔
  • HTML,CSS,Javascript在Web开发中分别起什么作用?

    简单描述HTML CSS Javascript在Web开发中分别起什么作用 1 什么是HTML 超文本标记语言 Hyper Text Markup Language HTML 是用来描述网页的一种语言 2 CSS 层叠样式表 Cascadi
  • VUE联动下拉选择框