<!-- 班次信息 -->
<el-row>
<el-col :span="24">
<el-form-item label="班次" prop="wt_no">
<el-input v-model="temp.wt_name" readonly>
<template #append>
<el-button @click="openShiftSelector">
选择班次
</el-button>
</template>
</el-input>
</el-form-item>
</el-col>
</el-row> <!-- 正班时间 -->
<el-row>
<el-col :span="8">
<el-form-item label="上班时间" prop="wt_ts">
<el-input v-model="temp.wt_ts" readonly/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="下班时间" prop="wt_te">
<el-input v-model="temp.wt_te" readonly/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="正班工时" prop="wt_hour">
<el-input v-model="temp.wt_hour" readonly/>
</el-form-item>
</el-col>
</el-row>
 <!-- 添加班次选择弹窗 -->
<el-dialog v-model="shiftDialogVisible" title="选择班次" width="600px">
<el-table
:data="wt_noOptions"
highlight-current-row
@current-change="handleShiftSelect"
style="width: 100%"
>
<el-table-column prop="wt_no" label="班次编号" width="100"/>
<el-table-column prop="wt_name" label="班次名称" width="150"/>
<el-table-column prop="wt_ts" label="上班时间" width="100">
<template #default="{row}">
{{ formatTime(row.wt_ts) }}
</template>
</el-table-column>
<el-table-column prop="wt_te" label="下班时间" width="100">
<template #default="{row}">
{{ formatTime(row.wt_te) }}
</template>
</el-table-column>
<el-table-column prop="wt_hour" label="工时" width="80"/>
<el-table-column prop="rmk" label="备注"/>
</el-table>
<template #footer>
<div class="dialog-footer">
<el-button @click="shiftDialogVisible = false">取消</el-button>
<el-button type="primary" @click="confirmShiftSelect">确定</el-button>
</div>
</template>
</el-dialog>
// 在 data() 中添加
data() {
return {
// ... 其他数据
shiftDialogVisible: false, // 班次选择弹窗显示状态
selectedShift: null, // 临时存储选中的班次
}
}, // 在 methods 中添加
methods: {
// ... 其他方法 // 打开班次选择弹窗
openShiftSelector() {
this.shiftDialogVisible = true;
this.selectedShift = null;
}, // 处理班次选择
handleShiftSelect(row) {
this.selectedShift = row;
}, // 确认班次选择
confirmShiftSelect() {
if (this.selectedShift) {
this.temp = {
...this.temp,
wt_no: this.selectedShift.wt_no,
wt_name: this.selectedShift.wt_name,
wt_ts: this.selectedShift.wt_ts,
wt_te: this.selectedShift.wt_te,
wt_hour: this.selectedShift.wt_hour
};
}
this.shiftDialogVisible = false;
}, // 修改关闭弹窗方法
closeDialog() {
this.$refs.dataForm.resetFields();
this.temp = {
dp_no: '',
dp_name: '',
wt_d: '',
wt_no: '',
wt_name: '',
wt_ts: '',
wt_te: '',
wt_hour: '',
wt_ts1: null,
wt_te1: null,
wt_hour1: 0,
pa_operate: '',
pa_operate_name: '',
rmk: '',
status: true
};
},
}

1、将班次选择改为按钮开窗选择

2、使上班时间、下班时间和工时为只读字段

3、开窗选择返回班次信息

vue 前端选择弹窗取值完整实例[经典]的更多相关文章

  1. input取值区间实例

    前端开发中经常会遇到 input 取值区间的需求,比如搜索的时候,价格区间,积分值区间 大致的需求为 input 的值必须是正整数,第二个 input 的值必须大于第一个 DOM结构如下: <d ...

  2. Spring Boot后端+Vue前端+微信小程序,完整的开源解决方案!

    项目简介 一个小商场系统,包括: 后端:Spring Boot 管理员前端:Vue 用户前端:微信小程序 功能介绍 1.小商城 首页 专题列表.专题详情 分类列表.分类详情 品牌列表.品牌详情 新品首 ...

  3. vue中ref-父主动取值值;

    多用月input标签 定义的时候 直接写ref=“id” <el-input placeholder="请输入内容" style="width: 150px&quo ...

  4. Vue列表渲染:一个取值范围的v-for

    v-for 也可以取整数.在这种情况下,它将重复多次模板. 例子 <div id="app"> <span v-for="n in 10"&g ...

  5. freemarker 前端 判读 遍历 取值

    <#if content?length gt 100> ${content[0..100]}... <#else> ${content} </#if> freema ...

  6. el-select,选择一行,取值行的对象.

      <el-select v-model="set_invoice_form.InvoiceType" placeholder="请选择" :disabl ...

  7. loadrunner 脚本优化-参数化之场景中的参数化取值

    脚本优化-场景中的参数化取值 by:授客 QQ:1033553122   Action() { lr_eval_string("{NewParam}"); lr_eval_stri ...

  8. vue页面开发遇到的坑,都是泪!src属性,freemarker取值

    总结下今天做的看图识别药材名的功能所遇到的问题以及解决措施. 效果图如下 对应的连接 http://www.xinghengedu.com/getTenActivityQuestions.jspx 可 ...

  9. LoadRunner脚本实例来验证参数化的取值

    LoadRunner脚本实例来验证参数化的取值 SINM {3]!G0问题提出:  主要想试验下,在Controller中,多个用户,多次迭代中参数的取值.51Testing软件测试网(['H5f,d ...

  10. bootstrap select 多选的用法,取值和赋值(取消默认选择第一个的对勾)

    h5自带的select标签可以实现按住ctrl键多选的功能,但是样式及其难看. bootstrap select是很好用的前端插件 ​ 首先引入bootstrap和bootstrap-select的c ...

随机推荐

  1. weixueyuan-Nginx代理服务器5

    https://www.weixueyuan.net/nginx/proxy_server/ Nginx HTTP代理服务器 代理功能根据应用方式的不同可以分为正向代理和反向代理.正向代理是客户端设置 ...

  2. w3cschool-Apache Storm 教程

    https://www.w3cschool.cn/apache_storm/ Apache Storm教程Apache Storm简介Apache Storm核心概念Apache Storm集群架构A ...

  3. Java常用框架面试题

    SpringSpring如何解决循环依赖循环依赖的产生可能有很多种情况,例如: A的构造方法中依赖了B的实例对象,同时B的构造方法中依赖了A的实例对象A的构造方法中依赖了B的实例对象,同时B的某个fi ...

  4. LeetCode 未验证规则

    1. for循环容易忘记break,很多提交不过,都是因为这个 2. 左右指针,思考起来比较复杂,但是以代码容易理解.code精简为主,不要在乎省下一两次运算时间 3. 左右指针,有时候以left & ...

  5. H5移动端开发注意事项

    1.安卓浏览器看背景图片,有些设备会模糊. 用同等比例的图片在PC机上很清楚,但是手机上很模糊,原因是什么呢? 经过研究,是devicePixelRatio作怪,因为手机分辨率太小,如果按照分辨率来显 ...

  6. KKRT-PSI

    KKRT库:https://github.com/osu-crypto/BaRK-OPRF 文章:Efficient Batched Oblivious PRF with Applications t ...

  7. LOJ题目选做

    你妈,机房断电写了一大堆没了 题目大概是 https://vjudge.net/contest/633974 里我做的题 和joisc2014的题

  8. 上海站 | 2025 Seeed x LeRobot 具身智能黑客松报名开启!

    欢迎来到 Physical AI 的最前沿!Seeed x LeRobot 具身智能黑客松现邀请所有对在机器人领域训练模仿学习策略,并实时进行推理部署感兴趣的人,共同创造具有影响力的创新解决方案.在这 ...

  9. ORACLE SELECT INTO 赋值为空,抛出 NO DATA FOUND 异常

    例子: DECLARE ORDER_NUM VARCHAR2(20); BEGIN SELECT S.ORDER_NUM INTO ORDER_NUM FROM SALES_ORDER S WHERE ...

  10. FANUC机器人M-410iB/700电机断轴维修方法

    发那科(FANUC)作为电机领域的领袖品牌,其伺服电机广泛应用于各种工业设备中,特别是在机床.自动化控制.机器人等领域.然而,即使是如此高品质的伺服电机,也难免会出现FANUC工业机械手电机故障,其中 ...