一直认为EasyUI在后台管理方面比较专业,并且是开源免费的,所以一直热衷于该框架。
然而,今天使用EasyUI1.4版本(当前最新版本)的datagrid组件时,需要使用checkbox:true选择框列。需求是通过后台传入的数据列来初始化该列是否被选择(也就是把数据库里原有记录过的数据的选择框勾上),然后供操作者继续修改。
按照官方提供的例子,初始化数据确实没有问题(1.3之前的版本是没办法初始化选择框的,只能加载数据之后,再进行勾选操作),如图:
图1 - 代码
图2 - 展示效果
接下来,我需要添加“xx大师”这行数据,勾上之后,执行下面的JS
图3 - JS获取已选行
然后,在我的浏览器alert弹框内,竟然只弹出了我刚才所选取的“xx大师”这行数据, 那么初始化的时候被选择数据行,为什么没有呢?
带着这个问题,我使用Chrome的F12查看了代码,结果我震惊了....
首先,初始化数据,生成三行数据列表,找到三行数据所在的位置,EsayUI编译后转换的代码是这样
图4 - EasyUI初始化数据后,生成的代码
貌似,这么看起来没觉得什么问题,数据库内已选的两条数据也已经选择上了,并且生成的代码中checked=true的checked值也为checked了。
但是,当我对其进行操作的时候,却发现有点问题了...
act1:把之前初始化被勾上的选择框去掉
然后继续使用F12工具观察代码变动
纳尼,居然啥都没变?你**在逗我么?
好吧,我继续操作
act2:把之前操作去掉的勾再次勾上,然后观察代码
不管你们发没发现,反正我是发现了:
我们的勾上/取消的操作,EasyUI压根就没更改那个checkbox框的状态,而是直接对该tr进行增加/删除Class。还有getChecked方法也是根据这个Class来获取的,这些都能理解也能接受。
但是,我想弱弱地问一下,你丫初始化勾上的数据的时候,不知道给加一个Class啊?
同一个BUG,改了几个版本还没改好,说你啥好?
相关推荐
<link rel="stylesheet" type="text/css" href="path/to/jquery-easyui-1.4/themes/gray/easyui.css"> <script type="text/javascript" src="path/to/jquery-easyui-1.4/jquery.easyui.min.js"> ``` 5. **自定义...
总的来说,"jquery-easyui-1.4-patch.js"是一个针对性的解决方案,旨在修复jQuery EasyUI 1.4版本中datagrid组件加载数据时的重复问题。通过正确地应用这个补丁,开发者可以避免因该问题引发的性能损耗和用户体验...
"easyui-datagrid2-demo.zip" 文件包含了使用 EasyUI Datagrid 的一个示例,帮助开发者了解如何实现数据的加载、分页、排序等基本操作。 在这个 demo 中,我们可以从以下几个方面学习 EasyUI Datagrid 的使用: 1....
UI设计在一个系统中的重要性是不容忽视的,我们开发人员要做到:让用户去控制...给你的Easyui-DataGrid 表头添加一点料吧 Easyui-Datagrid—表头灵活显示http://blog.csdn.net/u010293698/article/details/47956865
"easyui-datagrid 之间拖拽效果 demo" 重点展示了如何在两个 EasyUI Datagrid 之间实现数据的拖放功能,这对于提升用户体验,尤其是处理大量数据时的交互性至关重要。 首先,Datagrid 是 EasyUI 提供的一种表格控件...
在"jquery-easyui-EDT-1.4-build1.rar"这个压缩包中,包含了对开发者极有帮助的资源,包括CHM格式的API文档和相关的接口HTML演示文件,这将为我们深入学习和应用jQuery EasyUI提供强有力的支持。 首先,CHM格式的...
easyui\easyui-datagrid10-demo.zip easyui\easyui-datagrid11-demo.zip easyui\easyui-datagrid12-demo.zip easyui\easyui-datagrid13-demo.zip easyui\easyui-datagrid14-demo.zip easyui\easyui-datagrid15-demo....
在本压缩包 "easyui-datagrid21-demo.zip" 中,我们找到了一个关于 EasyUI Datagrid21 的演示实例,该实例包含了一个 HTML 页面、一个 PHP 后端接口以及相关的图片和数据资源。下面将对这个演示实例进行详细的解析。...
easyui的datagridview拓展。具体的使用方法看我的博文,网址https://mp.csdn.net/postedit/85068385
支持datagrid扩展,在一条记录下面可以嵌套一个子datagrid,切记要在页面中引入该js
`jquery-easyui-1.4` 文件夹包含了 EasyUI 的核心库文件,主要包括 CSS 样式表、JavaScript 文件以及必要的图片资源。这些文件是EasyUI正常运行的基础,它们提供了所有组件的样式定义和功能实现。在实际项目中,...
在这个"jquery-easyui-EDT-1.4-build1.zip"压缩包中,包含的是EasyUI的API文档和演示示例,对于学习和掌握EasyUI非常有帮助。 首先,让我们来了解一下EasyUI的核心概念: 1. **组件库**:EasyUI 提供了一系列组件...
本文实例讲述了jQuery插件EasyUI设置datagrid的checkbox为禁用状态的方法。分享给大家供大家参考,具体如下: 方法很简单,我们只需要在数据加载成功后的事件中处理即可。具体代码如下所示: //事件 onLoadSuccess:...
在提供的文件名"jquery-easyui-1.4"中,我们可以推断这是EasyUI 1.4版本的完整包,包含jQuery库以及所有EasyUI的JavaScript和CSS文件,可能还包括示例、文档和其他资源。开发者可以直接引用这些文件来快速搭建基于...
EasyUI1.4中文文档
它的1.4版本中文文档包含了关于如何使用EasyUI的各种详细信息,包括组件、API、示例和最佳实践。下面将对EasyUI 1.4的重要知识点进行详细介绍。 1. **组件介绍** EasyUI 提供了丰富的组件,如对话框(dialog)、...
"easyui-datagrid-rowediting"是一个关于EasyUI Datagrid组件的特定功能,允许用户在表格行内进行编辑,实现多行数据的增删改查。本文将详细探讨这个功能的实现原理和应用场景。 一、EasyUI Datagrid简介 EasyUI的...
在这个实例中,我们将深入探讨 EasyUI 中的两个重要组件:`easyui-textbox` 和 `easyui-combobox`,以及它们的 `onchange` 事件响应。 `easyui-textbox` 是一个基础输入框组件,它扩展了原生 HTML 的 `input` 元素...
NumberBox 是 EasyUI 提供的一个用于输入数值的控件,通常在数据表格(datagrid)中用于显示和编辑数值字段。 问题的核心在于,当尝试在 NumberBox 中输入小数点时,系统会自动进行四舍五入操作,并且在设置小数...
- `EDT-1.4-build1`表明这是EasyUI的一个增强开发工具版本,可能包含了性能优化、新的组件或组件功能更新、错误修复等。 - 通常,新版本会带来更好的性能表现,更多的API支持,以及对现代浏览器的更好兼容性。 5....