博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
(原创)EasyUI中datagrid的行编辑模式中,找到特定的Editor,并为其添加事件
阅读量:5377 次
发布时间:2019-06-15

本文共 1258 字,大约阅读时间需要 4 分钟。

有时候在行编辑的时候,一个编辑框的值要根据其它编辑框的值进行变化,那么可以通过在开启编辑时,找到特定的Editor,为其添加事件

 

// 绑定事件, index为当前编辑行

var editors = $('#staffLogDetailGrid').datagrid('getEditors', index);     //获得当前行的编辑对象

console.info(editors[5]);  //editor[5]表示第五列这个控件

var sfgzEditor = editors[5];

sfgzEditor.target.bind('change',function () {

    console.info("111");

    console.info(sfgzEditor.target.val()); //sfgzEditor.target就是操作第五列控件对象

});

以上的edit类型是: 'validatebox',如下所示;

editor : {

    type : 'validatebox',

    options : {

       required : true

    }

}

绑定的是change事件;即单元格的内容改变时(无须失去焦点,只要内容改变就行了);

当然也可以绑定其他时间: 比如”blur”: 失去焦点的时候,实际中也有这种需求的, 比如一个单元格编辑完成后, 同时其他某些单元格的内容也会随之变化;

Bind是绑定的意识,即绑定事件的功能;

Change, blur, bind这些方法都在edit(Object).target里面; console.info(editors[5]);就可以在网页工具中查看到;

里面还有很多事件可以用

 

Type为'validatebox'的本人已经亲测过,是可以的; 可是type为’combobox’好像change和blur事件都无法正常触发;可是我看到 console.info(editors[5]);

输出的target 属性值为:

 

Object[input.combobox-f]

 

这是一个combobox对象;可以直接对其赋事件的; 所以代码如下:

 

// 绑定事件

var editors = $('#staffLogDetailGrid').datagrid('getEditors', lastIndex);     

console.info(editors[3]);

var sfgzEditor = editors[3];

var sfgzCobobox = sfgzEditor.target;

console.info(sfgzCobobox);

sfgzCobobox.combobox({  

    onChange : function(n,o){

console.info("111");

    }

});

 

这样就可以给type为combobox的edit绑定事件了;

转载于:https://www.cnblogs.com/sjqq/p/7413725.html

你可能感兴趣的文章
EasyUI基础入门之Pagination(分页)
查看>>
一次PHP代码上线遇到的问题
查看>>
显示密码
查看>>
实现one hot encode独热编码的两种方法
查看>>
ubuntu中文英文环境切换
查看>>
[sql]mysql启停脚本
查看>>
[elk]Mutate filter plugin增删改查字段
查看>>
Java内功心法,行为型设计模式
查看>>
向github项目push代码后,Jenkins实现其自动构建
查看>>
jquery中的ajax方法参数的用法和他的含义
查看>>
BZOJ 1226: [SDOI2009]学校食堂Dining
查看>>
数组去重的几种方法
查看>>
包装类的自动装箱与拆箱
查看>>
ShareSDk的使用
查看>>
android使用web加载网页的js问题
查看>>
poj 1068 Parencodings
查看>>
docker 数据卷管理
查看>>
如何让一个div的大小,从某一个特定值开始,随内容的增加而自动变化?
查看>>
P1977 出租车拼车(DP)
查看>>
iOS开发--完整项目
查看>>