el-select获取id和name
一般选中节点只会返回:value绑定的数据给v-model中,要想获取id和name一并传给后端,需要如下几步:
1、给选择框添加点击事件 @input="selectChangeParent"
2、v-for中多添加一个参数 index
<el-select v-model="inputForm.projectId" filterable placeholder="请选择" @input="selectChangeParent"><el-optionv-for="(item, index) in projectInfo":key="item.id":label="item.name":value="item.id"></el-option>
</el-select>
3、添加选择框点击事件的方法
selectChangeParent(index){let listData=[];listData = this.projectInfo;for (let i = 0; i <listData.length ; i++) {if ( listData[i].id==this.inputForm.projectId){this.inputForm.projectName=listData[i].name}}},
这是我在data中下拉框的数据结构
projectInfo: {id: '',name: ''},
总体思路,点击事件触发时获取到点击的id后,再和v-for绑定的数组做对比,对比时projectInfo的id和点击选择的id相同时,给inputForm里的对象赋值
完整代码:
<%
layout("/include/_vue_body.html", {title:"列表", parent:"隐患处理"}){
%>
<style>body {background: #ffffff !important;}
</style>
<div id="app" class="bg-white"><el-form :model="inputForm" size="small" ref="inputForm" v-loading="loading"label-width="120px"><el-row :gutter="15"><el-col :span="12"><el-form-item label="隐患名称" prop="hiddenName":rules="[{required: true, message:'隐患名称不能为空', trigger:'blur'}]"><el-input v-model="inputForm.hiddenName" placeholder="请填写隐患名称" maxlength="25"></el-input></el-form-item></el-col><el-col :span="12"><el-form-item label="整改措施" prop="hiddenMeasurId":rules="[]"><el-select v-model="inputForm.hiddenMeasurId" filterable placeholder="请选择"><el-optionv-for="item in hiddenMeasureList":key="item.id":label="item.measureName":value="item.id"></el-option></el-select></el-form-item></el-col><el-col :span="12"><el-form-item label="整改负责人" prop="principal":rules="[]"><fs-user-select:is_layer="true":limit="1":value="inputForm.principal"@get-value="(value) => { inputForm.principal = value}"></fs-user-select></el-form-item></el-col><el-col :span="12"><el-form-item label="整改监督人" prop="supervision":rules="[]"><fs-user-select:is_layer="true":limit="1":value="inputForm.supervision"@get-value="(value) => { inputForm.supervision = value}"></fs-user-select></el-form-item></el-col><el-col :span="12"><el-form-item label="隐患类型" prop="hiddenType":rules="[]"><el-select v-model="hiddenType" @change="selectProjectType"><el-option v-for="item in hiddenTypeList" :key="item.value" :label="item.label":value="item.value"></el-option></el-select></el-form-item></el-col><el-col :span="12"><el-form-item label="所属项目" prop="projectId":rules="[]"><el-select v-model="inputForm.projectId" filterable placeholder="请选择" @input="selectChangeParent"><el-optionv-for="(item, index) in projectInfo":key="item.id":label="item.name":value="item.id"></el-option></el-select></el-form-item></el-col><el-col :span="24"><el-form-item label="隐患地点" prop="address":rules="[]"><el-input v-model="inputForm.address" placeholder="请填写隐患地点" maxlength="64"show-word-limit></el-input></el-form-item></el-col><el-col :span="24"><el-form-item label="隐患详情" prop="hiddenDetail":rules="[]"><el-input :rows="6" type="textarea" v-model="inputForm.hiddenDetail" placeholder="请填写隐患详情"maxlength="200" show-word-limit></el-input></el-form-item></el-col><el-col :span="12"><el-form-item label="隐患图片" prop="hiddenUrl":rules="[]"><fs-upload-imgs v-model="inputForm.hiddenUrl"></fs-upload-imgs></el-form-item></el-col></el-row></el-form>
</div>
<script>var formContainer = new Vue({el: '#app',mixins: [sharpMixin],data() {return {loading: false,inputForm: {id: '${hiddenInfo.id}',hiddenName: '',principal: '',supervision: '',hiddenUrl: '',hiddenDetail: '',address: '',projectId: '',hiddenMeasurId: '',projectType: '',projectName:'',hiddenMeasurName: ''},hiddenType: '',hiddenTypeList: [],projectInfo: {id: '',name: ''},hiddenMeasure:{id: '',measureName: '',},hiddenMeasureList:[]}},created() {let that = thisthis.clearForm(function () {if (that.inputForm.id != '') {that.loadData()}});this.hiddenTypeList = this.getDictList("hidden_type")this.initHiddenMeasure()},methods: {loadData() {this.loading = truethis.get('${ctx}/safety/hiddenInfo/info', {id: this.inputForm.id}).then((res) => {if (res.data) {this.inputForm = res.datathis.hiddenType = this.inputForm.projectType}this.initBasicData()this.selectProjectType()this.loading = false})},selectChangeParent(index){let listData=[];listData = this.projectInfo;for (let i = 0; i <listData.length ; i++) {if ( listData[i].id==this.inputForm.projectId){this.inputForm.projectName=listData[i].name}}},initBasicData() {let initData = {}Object.assign(this.inputForm, initData);},initHiddenMeasure(){this.get('${ctx}/safety/hiddenMeasure/hiddenList').then((res) => {if (res.data) {this.hiddenMeasureList = res.data}})},initProjectData(type) {this.get('${ctx}/safety/hiddenInfo/findProjectInfo?type=' + type).then((res) => {if (res.data) {this.projectInfo = res.data}})},initBuildData(type) {this.get('${ctx}/safety/hiddenInfo/findProjectInfo?type=' + type).then((res) => {if (res.data) {this.projectInfo = res.data}})},initRoomData(type) {this.get('${ctx}/safety/hiddenInfo/findProjectInfo?type=' + type).then((res) => {if (res.data) {this.projectInfo = res.data}})},selectProjectType() {this.inputForm.projectType = this.hiddenTypelet type = this.inputForm.projectTypeif (this.hiddenType == 1) {//hiddenType为1时查询在建项目信息this.projectInfo = ''this.initProjectData(type)} else if (this.hiddenType == 2) {//hiddenType为2时查询建筑物信息this.projectInfo = ''this.initBuildData(type)} else {//hiddenType为3时查询房屋信息this.projectInfo = ''this.initRoomData(type)}},clearForm(call) {let that = thissetTimeout(function () {that.$refs['inputForm'].resetFields();if (call) {call();}}, 300)},// 提交doSubmit(call) {this.$refs['inputForm'].validate((valid) => {if (valid) {this.post('${ctx}/safety/hiddenInfo/save', this.inputForm).then((res) => {if (res.success) {this.$message.success(res.msg)call()} else {this.$message.error(res.msg)}})} else {return false;}})}}})
</script>
<% } %>
相关文章:
el-select获取id和name
一般选中节点只会返回:value绑定的数据给v-model中,要想获取id和name一并传给后端,需要如下几步: 1、给选择框添加点击事件 input"selectChangeParent" 2、v-for中多添加一个参数 index <el-select v-model"inputForm.pr…...
最简单的驱动程序
简介 在 Linux 内核中,Makefile 和 Kconfig 是两个重要的文件,它们分别承担着不同的作用。 Makefile Makefile 是一个文本文件,用于定义编译和构建内核的规则。它使用 make 工具来管理和自动化构建过程。Makefile 定义了编译器、链接器、编译选项、目标文件、源文件等信息…...
MFC String类的初始化学习
之前写过CString的用法; VC CString 编程实例图解_bcbobo21cn, cstring-CSDN博客 下面单独看一下CString的各种初始化方式; void CTest2View::OnDraw(CDC* pDC) {CTest2Doc* pDoc GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for nati…...
vue项目使用vite设置proxy代理,vite.config.js配置,解决本地跨域问题
vue3vite4项目,配置代理实现本地开发跨域问题 非同源请求,也就是协议(protocol)、端口(port)、主机(host)其中一项不相同的时候,这时候就会产生跨域 vite的proxy代理和vue-cli的proxy大致相同,需要在vite.config.js文件中配置&…...
实用-----七牛云绑定自定义域名 配置 HTTPS
实用-----七牛云绑定自定义域名 配置 HTTPS(无废话 无尿点) 1.访问SSL证书购买页面 https://portal.qiniu.com/certificate/ssl 2.购买免费证书 3.补全信息 注意: 域名直接输入 无需 www座机号随意填 区号需要搜索 下面为示例 4. 直接确认…...
【TS篇三】类、函数、for-of循环、类型推断
文章目录 一、类1.1 基本示例1.2 继承1.3 实例成员访问修饰符1.3.1 public 开放的1.3.2 private 私有的1.3.3 protected 受保护的1.3.4 readonly 只读的1.3.5 在参数中使用修饰符 1.4 属性的存(get)取(set)器1.5 静态成员 二、函数…...
Chatgpt批量改写文章网页版可多开软件-自动登录换号生成word或者TXT
Chatgpt批量改写文章网页版可多开软件介绍: 1、改写后生成docx格式文档和生成txt文档二选一。 2、支持原来docx文档里带图片的改写,改写伪原创后的docx里也带图片。 3、软件可以设置是否开启标题改写,可以自定义标题改写指令。 4、可以设置…...
Modelsim 使用教程(4)—— Working With Multiple Libraries
一、概述 在文中,我们将练习使用多个库。在实际的项目开发过程中,我们可能有多个库来组织设计,从第三方源代码访问IP,或者在仿真之间共享公共部分。我们将通过创建一个包含计数器设计单元的资源库来开始本文。接下来,我…...
【重要】浏览器输入地址提示【您的连接不是私密连接】解决方法
在配置 kubernetes-dashboard 时,出现您的连接不是私密连接,这种情况下,点开高级没有进一步的操作按钮,这是由于我们的证书无效导致浏览器自身防护拦截,为了接解决这个办法我们可以使用命令 thisisunsafe 强制信任该网…...
ESP-07S烧写固件记录
一,固件版本。 下面是官方默认AT指令版本,ESP-07S 的flash大小是4MB。 AT固件汇总 | 安信可科技 (ai-thinker.com) 二,烧录工具。 开发工具清单 | 安信可科技 (ai-thinker.com) 三,下载工具及连线。 使用USB转串口工具。 四&am…...
网络编程中关于UDP套接字的一些知识点
关于UDP的介绍: UDP(User Datagram Protocol,用户数据报协议)是一种面向无连接的、不可靠的传输协议,它在网络编程中也起着重要的作用。 1. 低延迟:相比于TCP,UDP没有建立连接和拥塞控制的开销…...
淘宝商品评论API接口(评论内容|日期|买家昵称|追评内容|评论图片|评论视频..)
淘宝商品评论API接口是淘宝开放平台提供的一种API接口,可以帮助开发者获取淘宝平台上的商品评论数据。 要使用淘宝商品评论API接口,需要进行以下步骤: 注册淘宝开放平台账号,创建应用并获取App Key和App Secret等信息。确定需要…...
计算机网络 第五章传输层
文章目录 1 传输层的功能2 传输层两种协议:UDP和TCP3 端口和端口号4 UDP数据报特点和首部格式5 UDP校验6 TCP协议的特点7 TCP报文段首部格式8 TCP连接:三次握手建立连接9 TCP连接:四次挥手释放连接10 TCP可靠传输11 TCP流量控制12 TCP拥塞控制…...
cartographer,ros,路径规划近两年的工作笔记
马上转入cartographer的去ros移植了,随便记录一下研究cartographer和ros这些天来的摸鱼笔记吧虽然很多人对用ros做产品嗤之以鼻,但是我个人是不排斥的,对代码能力有限的人群来说这是产品化最快的方式! 敝帚自珍~~~继续加油~~~ 建图总结 odom 尤其是转弯的时候,存在累积误…...
react 生命周期讲解
当涉及到React组件的创建、更新和销毁过程时,React的生命周期方法起到了至关重要的作用。正确地理解和使用这些生命周期方法可以帮助我们在不同的阶段执行特定的操作,从而实现更好的组件控制和优化。 1. 挂载阶段(Mounting) 在组…...
什么是TCY油封?
机械由无数组件协同工作以确保平稳运行,其中一种不可或缺的部件是油封,特别是TCY油封。本文旨在阐明TCY油封的应用、其重要性以及它们如何提高机械的整体效率。 TCY油封主要用于轴密封。轴是一种旋转机器元件,横截面通常为圆形,用…...
【Vue.js】使用Element入门搭建登入注册界面axios中GET请求与POST请求跨域问题
一,ElementUI是什么? Element UI 是一个基于 Vue.js 的桌面端组件库,它提供了一套丰富的 UI 组件,用于构建用户界面。Element UI 的目标是提供简洁、易用、美观的组件,同时保持灵活性和可定制性 二,Element…...
Apache Hive
目录 数据仓库(DW) SQL语法分类 Hive 和Hadoop之间的关系(底层是Hadoop Hive将SQL转换为MapReduce) 为什么使用Hive 使用Hadoop MapReduce直接处理数据所面临的问题 使用Hive处理数据的好处 对Hive的理解 A…...
[idea]关于idea开发乱码的配置
在JAVA开发中,一般统一设置为UTF-8的编码,包括但不限于开发工具、日志架构、虚拟机、文件编码等。常见配置如下: 1、IDEA工具 在idea64.exe.vmoptions、idea.exe.vmoptions中添加: -Dfile.encodingUTF-8 2、JAVA 运行在window…...
比较一个结构分割平面的两种方式
在8*8的范围内,差值结构4a81把空间分割成4个部分, 31 31 31 27 27 31 31 31 31 31 31 27 27 31 31 31 9 9 9 1 1 9 9 9 9 9 9 1 1 9 9 9 9 9 9 1 1 9 9 9 9 9 9 1 1 9 9 9 31 31 31 27 27 31 31 …...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
工程地质软件市场:发展现状、趋势与策略建议
一、引言 在工程建设领域,准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具,正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
鸿蒙(HarmonyOS5)实现跳一跳小游戏
下面我将介绍如何使用鸿蒙的ArkUI框架,实现一个简单的跳一跳小游戏。 1. 项目结构 src/main/ets/ ├── MainAbility │ ├── pages │ │ ├── Index.ets // 主页面 │ │ └── GamePage.ets // 游戏页面 │ └── model │ …...
Linux基础开发工具——vim工具
文章目录 vim工具什么是vimvim的多模式和使用vim的基础模式vim的三种基础模式三种模式的初步了解 常用模式的详细讲解插入模式命令模式模式转化光标的移动文本的编辑 底行模式替换模式视图模式总结 使用vim的小技巧vim的配置(了解) vim工具 本文章仍然是继续讲解Linux系统下的…...
