Easyui Datagrid自定义按钮列(最后面的操作列)


Posted in Javascript onJuly 13, 2017

做项目的时候因为需求,要在表格的最后添加一列操作列,easyUI貌似没有提供这种功能,不过没关系,我们可以自定义来实现

版本:jQuery easyUI 1.3.2

这里我的实现方式是采用HTML形式,js方式暂时还没用到

首先是HTML部分

<table id="dg" title="学生信息" class="easyui-datagrid" 
      url="${ctx}listStudent.do" 
      toolbar="#toolbar" pagination="true" 
      rownumbers="false" fitColumns="true" singleSelect="true"> 
    <thead> 
      <tr> 
        <th data-options="field:'stuNo',sortable:true,width:20">学号</th> 
        <th data-options="field:'name',width:20">姓名</th> 
        <th data-options="field:'gender',width:20,formatter:formatGender">性别</th> 
        <th data-options="field:'nationality',width:20">名族</th> 
        <th data-options="field:'address',width:50,formatter:formatAddr">家庭地址</th> 
        <th data-options="field:'mobile',width:20">手机号</th> 
        <th data-options="field:'birthday',width:20">出生日期</th> 
        <th data-options="field:'registDate',sortable:true,width:20">入学时间</th> 
        <th data-options="field:'_operate',width:80,align:'center',formatter:formatOper">操作</th> 
      </tr> 
    </thead> 
  </table> 
<th data-options="field:'_operate',width:80,align:'center',formatter:formatOper">操作</th>

注意红色部分,就是我们的操作列,field的名字随便取,我这里是_operate,关键是formatOper函数

function formatOper(val,row,index){ 
  return '<a href="#" rel="external nofollow" onclick="editUser('+index+')">修改</a>'; 
}

formatOper()函数中有三个参数,val指当前单元格的值,row,当前行对象,index当前行的索引.这里我们就需要这个index

我把这个index传入了一个叫editUser的函数中,为什么要传这个index呢,我们在来看下这个editUser函数

function editUser(index){ 
  $('#dg').datagrid('selectRow',index);// 关键在这里 
  var row = $('#dg').datagrid('getSelected'); 
  if (row){ 
    $('#dlg').dialog('open').dialog('setTitle','修改学生信息'); 
    $('#fm').form('load',row); 
    url = '${ctx}updateStudent.do?id='+row.id; 
  } 
}

翻阅easyUI文档可以发现datagrid有一个方法叫selectRow

selectRow index Select a row, the row index start with 0.

它的作用就是手动选中表格的行,参数就是index值,从0开始

这样,我们就能实时获取到鼠标点击行所对应的数据了 

$('#dg').datagrid('selectRow',index);
var row = $('#dg').datagrid('getSelected');

这两句话就是获取选中的行

具体效果如图 

Easyui Datagrid自定义按钮列(最后面的操作列)

以上所述是小编给大家介绍的Easyui Datagrid自定义按钮列(最后面的操作列),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS window对象的top、parent、opener含义介绍
Dec 03 Javascript
制作jquery遮罩层效果导航菜单代码分享
Dec 25 Javascript
javascript生成大小写字母
Jul 03 Javascript
javascript设置页面背景色及背景图片的方法
Dec 29 Javascript
jQuery获取浏览器类型和版本号的方法
Jul 05 Javascript
深入学习jQuery中的data()
Dec 22 Javascript
解决vue中使用Axios调用接口时出现的ie数据处理问题
Aug 13 Javascript
浅谈webpack+react多页面开发终极架构
Nov 11 Javascript
vue 实现超长文本截取,悬浮框提示
Jul 29 Javascript
通过实例解析jQ Ajax操作相关原理
Sep 23 Javascript
vue中可编辑树状表格的实现代码
Oct 31 Javascript
JavaScript 中for/of,for/in 的详细介绍
Nov 17 Javascript
AngularJS 实现点击按钮获取验证码功能实例代码
Jul 13 #Javascript
解决Vue页面固定滚动位置的处理办法
Jul 13 #Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
Jul 13 #Javascript
Angular如何引入第三方库的方法详解
Jul 13 #Javascript
详解如何构建Angular项目目录结构
Jul 13 #Javascript
深入理解Vue-cli搭建项目后的目录结构探秘
Jul 13 #Javascript
JS实现弹出下载对话框及常见文件类型的下载
Jul 13 #Javascript
You might like
PHP下判断网址是否有效的代码
2011/10/08 PHP
php中大括号作用介绍
2012/03/22 PHP
php通过array_merge()函数合并两个数组的方法
2015/03/18 PHP
php类的定义与继承用法实例
2015/07/07 PHP
PHP读取文件内容的五种方式
2015/12/28 PHP
JavaScript中的Location地址对象
2008/01/16 Javascript
Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
2009/09/15 Javascript
编写针对IE的JS代码两种编写方法
2013/01/30 Javascript
基于mouseout和mouseover等类似事件的冒泡问题解决方法
2013/11/18 Javascript
javascript数据结构与算法之检索算法
2015/04/04 Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
2015/08/27 Javascript
jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
2016/06/28 Javascript
js操作DOM--添加、删除节点的简单实例
2016/07/08 Javascript
JavaScript中绑定事件的三种方式及去除绑定
2016/11/05 Javascript
纯JS焦点图特效实例(可一个页面多用)
2016/12/07 Javascript
Mongoose学习全面理解(推荐)
2017/01/21 Javascript
详谈jQuery.load()和Jsp的include的区别
2017/04/12 jQuery
微信小程序实现手指触摸画板
2018/07/09 Javascript
JS 中可以提升幸福度的小技巧(可以识别更多另类写法)
2018/07/28 Javascript
详解小程序缓存插件(mrc)
2018/08/17 Javascript
解决eclipse中没有js代码提示的问题
2018/10/10 Javascript
模块化react-router配置方法详解
2019/06/03 Javascript
如何区分vue中的v-show 与 v-if
2020/09/08 Javascript
Vue 简单实现前端权限控制的示例
2020/12/25 Vue.js
[02:18]《我与DAC》之工作人员:为了热爱DOTA2的玩家们
2018/03/28 DOTA
[25:45]2018DOTA2亚洲邀请赛4.5SOLO赛 Sylar vs Paparazi
2018/04/06 DOTA
python list转dict示例分享
2014/01/28 Python
Python的SimpleHTTPServer模块用处及使用方法简介
2018/01/22 Python
python向已存在的excel中新增表,不覆盖原数据的实例
2018/05/02 Python
使用Python操作FTP实现上传和下载的方法
2019/04/01 Python
python匿名函数用法实例分析
2019/08/03 Python
tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this T
2020/06/22 Python
集世界奢侈品和设计师品牌的意大利精品买手店:Tessabit
2019/08/17 全球购物
4s店总经理岗位职责
2013/12/31 职场文书
水毁工程实施方案
2014/04/01 职场文书
2019年第四季度财务部门工作计划
2019/11/02 职场文书