JQuery easyUi datagrid 中 自定义editor作为列表操作按钮列
转自 http://blog.csdn.net/tianlincao/article/details/7494467
前言
解决方法
第一步:新增自定义编辑器
- $.extend($.fn.datagrid.defaults.editors, {
- delEdit : {
- init: function(container, options)
- {
- var editorContainer = $('<div/>');
- var button = $("<a href='javascript:void(0)'></a>")
- .linkbutton({plain:true, iconCls:"icon-remove"});
- editorContainer.append(button);
- editorContainer.appendTo(container);
- return button;
- },
- getValue: function(target)
- {
- return $(target).text();
- },
- setValue: function(target, value)
- {
- $(target).text(value);
- },
- resize: function(target, width)
- {
- var span = $(target);
- if ($.boxModel == true){
- span.width(width - (span.outerWidth() - span.width()) - 10);
- } else {
- span.width(width - 10);
- }
- }
- }
- });
这是我新增的一个删除按钮编辑框,按钮用的是easyui的linkbutton,图标样式是icon-remove。
第二步:绑定自定义编辑器
- {field:'actionColumn',title:'<%/*自定义删除按钮*/%>',width:20,align:'center',editor:'delEdit'}
actionColumn是json中的列属性,title可以为空或者自己命名,editor指定为自定义的编辑器。
- onClickRow:function(rowIndex, rowData){
- if(rowIndex == lastIndex)
- {
- $('#workloadTable').datagrid('endEdit', lastIndex);
- lastIndex = -999;
- }
- else
- {
- $('#workloadTable').datagrid('endEdit', lastIndex);
- $('#workloadTable').datagrid('beginEdit', rowIndex);
- $('#workloadTable').datagrid('endEdit', lastIndex);
- //增加完成情况字数输入限制
- $('#workloadTable').datagrid('beginEdit', rowIndex);
- var ed = $('#workloadTable').datagrid('getEditors', rowIndex);
- for (var i = 0; i < ed.length; i++)
- {
- var e = ed[i];
- if(e.field == "description")
- {
- $(e.target).bind("keyup",function()
- {
- return countChar($(this));
- }).bind("change", function()
- {
- return countChar($(this));
- });
- }
- }
- setEditing(rowIndex, rowData);
- lastIndex = rowIndex;
- }
- }
setEditing 就是行编辑器的重构函数,代码如下:
- /**
- * 重构行编辑器
- * @param rowIndex
- */
- function setEditing(rowIndex, rowData){
- var editors = $('#workloadTable').datagrid('getEditors', rowIndex);
- var delEditor = editors[3]; // 删除按钮
- var delReportButton = delEditor.target;
- delReportButton.attr("title",'<%/*删除完成情况*/%><bean:message key="task.workloadnew.addreportbyday.jsp.message003"/>').linkbutton({iconCls:"icon-remove"});
- delReportButton.bind("click",function()
- {
- if(!rowData)
- {
- return;
- }
- deleteLog(rowData); // 删除日志
- });
- }
这就为我们的delEditor 绑定了click方法,此处也可以绑定其他行编辑框的方法,比如输入字数限制,值设置等。
最后
JQuery easyUi datagrid 中 自定义editor作为列表操作按钮列的更多相关文章
- JQuery easyUi datagrid 中 editor 动态设置最大值最小值
前言 近来项目中使用到 easyui 来进行页面设计,感觉挺方便的,但是网上除了api外,其他有价值的资料比较少,故在此分享一点经验,供大家参考. 问题 JQuery easyUi datagri ...
- [WPF]GridView或DataGrid中自定义样式:依据某一列设定其对应行的样式(背景色,字体等)
附效果照一张: 本方法使用StyleSelector来 获得依据自定义逻辑的style. ① class ConditionalStyleSelector : StyleSelector { publ ...
- jquery easyui datagrid设置可编辑行的某个列不可编辑
function onClickRowd(index1, field1) { if (editIndexd != index1) { if (endEditing()) { $('#dg').data ...
- jquery easyui datagrid 无滚动条,datagrid 没垂直滚动条
jquery easyui datagrid 无滚动条,datagrid 没垂直滚动条 ============================== 蕃薯耀 2018年2月6日 http://www. ...
- 扩展jquery easyui datagrid编辑单元格
扩展jquery easyui datagrid编辑单元格 1.随便聊聊 这段时间由于工作上的业务需求,对jquery easyui比较感兴趣,根据比较浅薄的js知识,对jquery easyui中的 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 自定义分页
jQuery EasyUI 数据网格 - 自定义分页 数据网格(datagrid)内置一个很好特性的分页功能,自定义也相当简单.在本教程中,我们将创建一个数据网格(datagrid),并在分页工具栏上 ...
- jquery easyui datagrid使用参考
jquery easyui datagrid使用参考 创建datagrid 在页面上添加一个div或table标签,然后用jquery获取这个标签,并初始化一个datagrid.代码如下: 页面上 ...
- Jquery easyui datagrid 导出Excel
From:http://www.cnblogs.com/weiqt/articles/4022399.html datagrid的扩展方法,用于将当前的数据生成excel需要的内容. 1 <sc ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 自定义排序
jQuery EasyUI 数据网格 - 自定义排序 如果默认的排序行为不满足您的需求,您可以自定义数据网格(datagrid)的排序行为. 最基础的,用户可以在列上定义一个排序函数,函数名是 sor ...
随机推荐
- spring ehcache 使用详解
Spring 整合 Ehcache 管理缓存详解 yellowbutterfly 前言 Ehcache 是一个成熟的缓存框架,你可以直接使用它来管理你的缓存. Spring 提供了对缓存功能的抽象: ...
- bootstrapValidator 重置表单
最近在公司做业务系统后台,用的js框架还是jquery ui框架 是以bootstrap为基础的beyondadmin-v1.4.s3这套,用起来还挺不错,所以公司所有的后台ui都使用这套.这套ui ...
- redis---安全设置
redis的安全性是通过设置口令来实现的. 首先打开redis的配置文件,我的是在/etc/redis/redis.conf,个人的路径可能会有不同,可以自行查找. 打开redis.conf文件以后, ...
- JS案例练习-手机微信聊天对话框
先附图 CSS部分: <style> body{} *{;} li{list-style: none;} .container{ width:310px; height:600px; ma ...
- 使用adbWireless无线调试Android真机设备[转]
开发Android的朋友都知道,真机调试需要把手机与PC相连,然后把应用部署到真机上进行安装和调试.长长的USB线显得很麻烦,而且如果需要USB接口与其他设备连接的话显得很不方便.今天介绍一种不通过U ...
- hihocoder第三十六周 二分查找
题目链接:http://hihocoder.com/contest/hiho36/problem/1 , 一个比较简单的二分. 算法: 由于数据量比较大,O(nlogn)无法通过,所以不能先排序再查找 ...
- Redis基础对象
Redis 中每个对象都由一个 redisObject 结构表示 typedef struct redisObject { //类型 unsigned type:; //编码 unsigned enc ...
- 详解Unity 4.6新UI的布局
本文所讲的是Unity 4.6中新加入的uGUI,官方称Unity UI,而不是过去的OnGUI式的旧UI(官方称Legacy GUI). 我曾经在8月份对照4.6 Beta的文档写过一篇笔记学习Un ...
- World Wind Java开发之十五——加载三维模型(转)
之前的一篇博客是关于加载粗三维模型的,见http://blog.csdn.net/giser_whu/article/details/43452703,这个地方还存在着不能加载纹理的问题,一直没呢解决 ...
- POJ - 3685 Matrix
二分kth,答案满足的条件为:m ≤ 小于等于x的值数cntx.x和cntx单调不减,随着x增大,条件成立可表示为:0001111. 本地打一个小型的表可以发现列编号j固定时候,目标函数f(i,j)似 ...