EasyUI数据表格中嵌入下拉框

效果

在这里插入图片描述

代码

$(function () {// 标记当前正在编辑的行var editorIndex = -1;var data = [{code: 1,name: '1',price: 1,status: 0},{code: 2,name: '2',price: 2,status: 1}]$('#dg').datagrid({data: data,onDblClickCell:function (index, field, value) {var dg = $(this);if(field !== 'status' && editorIndex !== -1) {dg.datagrid("endEdit",editorIndex)return;}else if(field === 'status' && editorIndex !== -1 && editorIndex !== index) {dg.datagrid("endEdit",editorIndex)return;}if(field === 'status' && editorIndex === -1) {editorIndex = index;dg.datagrid("beginEdit",index)}},onSelect: function(index, row) {var dg = $(this);if(editorIndex !== index) {dg.datagrid("endEdit",index)}},onClickCell: function(index, field, value) {var dg = $(this);if(editorIndex !== -1 && field !== "status") {dg.datagrid("endEdit",editorIndex)} else if(field === 'status' && editorIndex !== -1 && editorIndex !== index) {dg.datagrid("endEdit",editorIndex)}},onEndEdit:function (index, row, changes) {if(editorIndex === index) {editorIndex = -1;var dg = $(this);dg.datagrid("updateRow",index,row)}},columns:[[{field:'code',title:'代码',width:100,align: 'center'},{field:'name',title:'名称',width:100,align: 'center'},{field:'price',title:'价格',width:100,align:'center'},{field:'status',title:'状态',width:100,align:'center',formatter:function(value,row,index){return value && (value === 1 || value === '1')  ? "禁用" : "启用"},editor: {type: 'combobox',options: {valueField: 'value',textField: 'text',data: [{value:1,text:'禁用'},{value:0,text:'启用'}]}}}]]});})

解析

列渲染为下拉框

{field:'status',title:'状态',width:100,align:'center',formatter:function(value,row,index){return value && (value === 1 || value === '1')  ? "禁用" : "启用"
},editor: {type: 'combobox',options: {valueField: 'value',textField: 'text',data: [{value:1,text:'禁用'},{value:0,text:'启用'}]}}}

双击触发编辑行

onDblClickCell:function (index, field, value) {var dg = $(this);// 关闭其他行的行编辑if(field !== 'status' && editorIndex !== -1) {dg.datagrid("endEdit",editorIndex)return;}else if(field === 'status' && editorIndex !== -1 && editorIndex !== index) {dg.datagrid("endEdit",editorIndex)return;}// 监听指定列,触发行编辑if(field === 'status' && editorIndex === -1) {editorIndex = index;dg.datagrid("beginEdit",index)}
},

监听关闭行编辑

onSelect: function(index, row) {var dg = $(this);if(editorIndex !== index) {dg.datagrid("endEdit",index)}
},
onClickCell: function(index, field, value) {var dg = $(this);if(editorIndex !== -1 && field !== "status") {dg.datagrid("endEdit",editorIndex)} else if(field === 'status' && editorIndex !== -1 && editorIndex !== index) {dg.datagrid("endEdit",editorIndex)}
},

监听编辑结束事件更新行数据

  onEndEdit:function (index, row, changes) {if(editorIndex === index) {editorIndex = -1;var dg = $(this);dg.datagrid("updateRow",index,row)}},

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/74427.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C语言】多进程/多线程

【C语言】多进程/多线程 参考链接多进程/多线程服务器1. 多进程服务器2. 多线程服务器 结语参考链接 参考链接 c 中文网 菜鸟 c 多进程/多线程服务器 多进程和多线程是常用的并发编程技术。它们都允许程序同时执行多个任务,提高了系统的资源利用率和程序的运行效率…

mysql 磐维(opengauss)tidb误删数据之高级恢复

Mysql参考: Mysql 8.0 XtraBackupMysqlbinlog 完全恢复 - 墨天轮 Mysql 8.0 XtraBackupMysqlbinlog 完全恢复[TOC]# 一、安装mysql 8.0.19## 1.1https://www.modb.pro/db/509223MySQL 的全量备份、增量备份与 Binlog 时间点恢复_mysqlbinlog自动备份吗-CSDN博客文章…

3. 轴指令(omron 机器自动化控制器)——>MC_SetPosition

机器自动化控制器——第三章 轴指令 11 MC_SetPosition变量▶输入变量▶输出变量▶输入输出变量 功能说明▶时序图▶重启动运动指令▶多重启运动指令▶异常 MC_SetPosition 将轴的指令当前位置和反馈当前位置变更为任意值。 指令名称FB/FUN图形表现ST表现MC_SetPosition当前位…

从 @SpringBootApplication 出发,深度剖析 Spring Boot 自动装配原理

在 Spring Boot 的开发旅程中,SpringBootApplication 注解堪称开启便捷开发之门的钥匙。它不仅是一个简单的注解,更是理解 Spring Boot 自动装配原理的重要入口。接下来,我们将以SpringBootApplication 为切入点,深入探究 Spring …

MySQL面试专题

1.什么是BufferPool? Buffer Pool基本概念 Buffer Pool:缓冲池,简称BP。其作用是用来缓存表数据与索引数据,减少磁盘IO操作,提升效率。 Buffer Pool由缓存数据页(Page) 和 对缓存数据页进行描述的控制块 组成, 控制…

调用百度api实现语音识别(python)

该代码实现了一个企业级的语音识别解决方案,通过调用百度语音识别API,实现实时录音识别和对已有音频语音识别功能。 百度智能云:请自行访问百度智能云,开通免费的语音识别功能,获取API_KEY和SECRET_KEY。操作按照百度流程即可,可免费申请。 首先,配置下百度API和描述下错…

KRaft模式

目录标题 Kraft模式**1. 什么是Kraft模式?****2. 为什么引入Kraft模式?****3. 核心优势****4. 架构与工作原理****5. 部署与配置要点****6. 适用场景与最佳实践****总结**KIP-833: Mark KRaft as Production Ready除了Kraft模式,Kafka还有以下…

单片机电路中常见的英文术语及缩写

以下是单片机电路中常见的英文术语及缩写的解释及其作用说明,按功能分类整理,便于理解: 一、核心术语 MCU (Microcontroller Unit) • 中文:微控制器单元 • 作用:单片机的核心芯片,集成CPU、存储器、外设接…

常见框架漏洞之一:Thinkphp5x

ThinkPHP是为了简化企业级应⽤开发和敏捷WEB应⽤开发⽽诞⽣的,是⼀个快速、兼容⽽且简单的轻量级国产PHP开发框架,诞⽣于2006年初,原名FCS,2007年元旦正式更名为 ThinkPHP,遵循Apache2开源协议发布,从Stru…

2025年优化算法:龙卷风优化算法(Tornado optimizer with Coriolis force,TOC)

龙卷风优化算法(Tornado optimizer with Coriolis force)是发表在中科院二区期刊“ARTIFICIAL INTELLIGENCE REVIEW”(IF:11.7)的2025年智能优化算法 01.引言 当自然界的狂暴之力,化身数字世界的智慧引擎&…

面试中如何回答性能优化的问题

性能问题和Bug不同,后者的分析和解决思路更清晰,很多时候从应用日志(文中的应用指分布式服务下的单个节点)即可直接找到问题根源,而性能问题,其排查思路更为复杂一些。 对应用进行性能优化,是一个系统性的工程,对工程师的技术广度和技术深度都有所要求。一个简单的应用…

CMake 函数和宏

CMake 函数 CMake 函数定义语法如下, 其中 name 为函数名, <arg1> 为参数名, <commands> 为函数体. 函数定义后, 可以通过 name 调用函数. 函数名允许字母数字下划线, 不区分大小写. function(name [<arg1> ...])<commands> endfunction()如下的样例…

【QA】Qt有哪些迭代器模式的应用?

在 Qt/C 中&#xff0c;迭代器模式的设计主要分为 标准 C 风格 和 Qt 框架特有风格&#xff0c;以下结合代码详细说明两种实现方式的关键设计及其应用场景&#xff1a; 一、Qt 框架中的迭代器模式设计 Qt 提供了两种迭代器风格&#xff1a;Java 风格&#xff08;显式迭代器&am…

Mysql表的简单操作

&#x1f3dd;️专栏&#xff1a;Mysql_猫咪-9527的博客-CSDN博客 &#x1f305;主页&#xff1a;猫咪-9527-CSDN博客 “欲穷千里目&#xff0c;更上一层楼。会当凌绝顶&#xff0c;一览众山小。” 目录 3.1 创建表 3.2 查看表结构 3.3 修改表 1. 添加字段 2. 修改字段 3…

【云馨AI-大模型】自动化部署Dify 1.1.2,无需科学上网,Linux环境轻松实现,附Docker离线安装等

Dify介绍 官网&#xff1a;https://dify.ai/zh生成式 AI 应用创新引擎开源的 LLM 应用开发平台。提供从 Agent 构建到 AI workflow 编排、RAG 检索、模型管理等能力&#xff0c;轻松构建和运营生成式 AI 原生应用。 Dify安装脚本 目录创建 mkdir -p /data/yunxinai &&a…

WordPress上传图片时显示“未提供数据”错误

在WordPress中上传图片时显示“未提供数据”的错误&#xff0c;通常是由多种原因引起的&#xff0c;以下是一些常见的问题及其解决方法&#xff1a; 1. 文件权限问题 WordPress需要正确的文件和目录权限才能正常上传图片。如果权限设置不正确&#xff0c;可能会导致无法上传图…

python3面试题20个(python web篇)

更多内容请见: python3案例和总结-专栏介绍和目录 文章目录 1.python asyncio的原理?2.对Flask蓝图(Blueprint)的理解?3.Flask 和 Django 路由映射的区别?4.什么是wsgi,uwsgi,uWSGI?5.Django、Flask、Tornado的对比?6.CORS 和 CSRF的区别?7.Session,Cookie,JWT的理解8.简…

RedisTemplate和RedissonClient适用的场景有什么不同

在 Spring Boot 项目中&#xff0c;RedisTemplate 和 RedissonClient 分别针对不同的使用场景设计&#xff0c;以下是它们的核心区别和适用场景分析&#xff1a; 一、RedisTemplate&#xff08;Spring Data Redis&#xff09; 定位 Spring 官方提供的 Redis 操作工具&#xf…

人脸表情识别系统分享(基于深度学习+OpenCV+PyQt5)

最近终于把毕业大论文忙完了&#xff0c;众所周知硕士大论文需要有三个工作点&#xff0c;表情识别领域的第三个工作点一般是做一个表情识别系统出来&#xff0c;如下图所示。 这里分享一下这个表情识别系统&#xff1a; 采用 深度学习OpenCVPyQt5 构建&#xff0c;主要功能包…

GitHub供应链攻击事件:Coinbase遭袭,218个仓库暴露,CI/CD密钥泄露

此次供应链攻击涉及GitHub Action "tj-actions/changed-files"&#xff0c;最初是针对Coinbase的一个开源项目的高度定向攻击&#xff0c;随后演变为范围更广的威胁。 攻击过程与影响 Palo Alto Networks Unit 42在一份报告中指出&#xff1a;“攻击载荷主要针对其…