easyui datagrid的行编辑器editor 如何实现新增时可修改,编辑时,不可修改
2024-08-29 06:16:07
项目出现一个需求,要求用户界面的用户名,新增时,可自由输入,编辑时,不可修改
html页面
<table id="gridlist" data-bind="datagrid:grid" >
<thead>
<tr>
<th field="ck" checkbox="true" readOnly:true ></th>
<th field="OptimisticLockField" hidden="true"></th>
<th field="UserCode" sortable="true" align="left" width="80" editor="{type:'validatebox',options:{required: true }}" >用户名 </th>
<th field="UserName" sortable="true" align="left" width="200" editor="{type:'validatebox',options:{required: true }}" >名称 </th>
<th field="OriginalPassword" sortable="true" align="left" width="200" >密码 </th>
<th field="Org" sortable="true" align="left" width="200" editor="{type:'lookup',options:{required:true,lookupType:'cloud.PcsOrg',window:{title:'所属机构'},queryParams:{State:9,Ou:false}}}" formatter="formatOrg" >所属机构 </th>
<th field="IsEnable" sortable="true" align="center" width="120" editor="{type:'checkbox',options:{on:1,off:0}}" formatter="com.formatCheckbox" >是否可用</th>
<th field="IsAdmin" align="center" width="120" editor="{type:'checkbox',options:{on:1,off:0}}" formatter="com.formatCheckbox">是否管理员</th>
<th field="LoginCount" sortable="true" align="right" width="120" >登录次数</th>
<th field="LastLoginDate" sortable="true" align="left" width="135" formatter="com.formatDate">最后登录日期</th>
<th field="LastLoginOU" align="left" width="170" hidden="true" >最后登录组织</th>
<th field="OrganizeNames" align="left" width="170">最后登录组织</th>
<th field="Permit" align="center" width="320" formatter="formatterButton"> 操作 </th>
<th field="Description" align="left" width="150" editor="text">描述</th> </tr>
</thead>
</table>
原先编辑方法
//原先编辑方法
this.editClick = function () {
if (self.RowsCount() > 1) return;
var row = self.grid.datagrid('getSelected');
if (row == null) {
com.message('error', "请选中需编辑的一行数据");
return;
}
var index = self.grid.datagrid('getRowIndex', row);
self.gridEdit.begin(index, row);
self.viewType = v_edit;
self.IsViewType(v_edit);
};
新的编辑方法
//新的编辑方法
this.editClick = function () {
if (self.RowsCount() > 1) return;
var row = self.grid.datagrid('getSelected');
if (row == null) {
com.message('error', "请选中需编辑的一行数据");
return;
}
//在编辑后把用户名改为查看状态
if (row._isnew == undefined) {
//编辑的时候把用户名改为查看状态
$('#gridlist').datagrid('removeEditor', 'UserCode');
}
var index = self.grid.datagrid('getRowIndex', row);
self.gridEdit.begin(index, row);
self.viewType = v_edit;
self.IsViewType(v_edit);
};
页面效果
1)新增时
2)编辑时
总结:使用 datagrid的removeEditor方法,指定对应列名,如语法: $('#gridlist').datagrid('removeEditor', 'UserCode');
最新文章
- android intent和intent action大全
- 搭建DAO层和Service层代码
- ORACLE分区--表分区
- 批量去除Teleport Pro整站下载文件冗余代码
- 《软件性能测试与LoadRunner实战教程》新书上市
- 下面将详细说明useradd与usermod 的参数及用法!
- PHP面向对象的继承
- 常用PHP框架功能对比表
- c# sql连接数据库
- elastic search 学习笔记
- Java继承与清理
- redmine和svn server的部署
- CSS学习之选择器
- 一个可以配置阴影方向和颜色的类 CardView 控件 SCardView
- go语言学习--内核态和用户态(协程)
- 面对AI
- Atcoder Beginner Contest 118 D-Match Matching(完全背包)
- 基于Eclipse搭建hadoop开发环境
- 有谁知道Delphi中";窗口";的创建过程?
- wshShell.SendKeys模拟键盘操作
热门文章
- React 之 Redux 的使用
- Nginx学习(一)
- swipe滑动操作
- WingIDE Pro 7如何检查Python集成?
- 上传自己的构件(Jar)到Maven中央仓库
- Android 还可以走多久?
- 移动端 1px 像素边框问题的解决方案(Border.css)
- 201671010406-丁家辉-实验十四 团队项目评审&;课程学习总结
- 16、Python面向对象进阶
- ";<;<;";和“>;>;”运算