简介EasyUI datagrid editor combogrid搜索框的实现


Posted in Javascript onApril 01, 2016

首先需要datagrid editor对combogrid的扩展,这个是别人实现的:

$.extend($.fn.datagrid.defaults.editors, {
combogrid: {
init: function (container, options) {
var input = $('<input type="text" class="datagrid-editable-input">').appendTo(container);
input.combogrid(options);
return input;
},
destroy: function (target) {
$(target).combogrid('destroy');
},
getValue: function (target) {
return $(target).combogrid('getValue');
},
setValue: function (target, value) {
$(target).combogrid('setValue', value);
},
resize: function (target, width) {
$(target).combogrid('resize', width);
}
}
});

然后将搜索框写在div里面

<div id="Marketer_ID_Member_bar">
<table cellpadding="0" cellspacing="0" style="width: 100%;">
<tr>
<td style="text-align: right; padding-right: 15px">
<input id="userName_Member" placeholder="姓名/用户名" style="width: 100px; border: 0;" />
<input type="button" value="查询" onclick="sy.memberInfo.userSearch_Member();" />
</td>
</tr>
</table>
</div>

通过toolbar: "#Marketer_ID_Member_bar"来绑定

下面肉戏来了,按照我们在别的地方应用combogrid的做法,具体的搜索方法sy.memberInfo.userSearch_Member里面是这样的:

$('#Marketer_ID_Member').combogrid('grid').datagrid('options').queryParams.Name = $("#userName_Member").val();
$('#Marketer_ID_Member').combogrid('grid').datagrid('reload');

然而,在editor里面没有明确的id用来寻找元素,此时第一反应是自己加一个ID行不行,于是我尝试给editor加一个属性“id”,然并卵。

接下来尝试在combogrid加载完成的时候通过Marketer_ID_Member_bar来关联找到它的父级(思路是它是作为combogrid的toolbar,通过它应该能找到combogrid)并赋值id,结果能赋值成功,但是Marketer_ID_Member_bar的父级并不是combogrid,失败。

此时想到去看看别的地方使用combogrid的情况,最终发现,如果我通过$('#txtInputID').combogrid({});把一个input转化成combogrid,此input的class会被变成easyui-validatebox combogrid-f combo-f validatebox-text,通过对比,发现在editor使用的时候,该列的输入框的样式是:datagrid-editable-input combogrid-f combo-f,

这应该就是正主了,同样不方便设置id,于是我们使用样式选择器,所以最终sy.memberInfo.userSearch_Member方法里是这样的:

$('.combogrid-f').combogrid('grid').datagrid('options').queryParams.Name = $("#userName_Member").val();
$('.combogrid-f').combogrid('grid').datagrid('reload');

也是够曲折的,前面开发的时候稍微研究了下没有解决好就没理它,因为还有一个办法可以避过,就是不使用editor,通过弹出框来编辑,也就不是很着急,今天稍微闲一点,又来看看,最终找到个能用的方案。

以上内容是针对EasyUI datagrid editor combogrid搜索框的实现的简单介绍,希望对大家有所帮助!

EasyUI中combogrid的使用方法

ComboGrid用法和参数配置

1、 需要引入class=" "easyui-combogrid”,必须应用在input或select元素中

2、 参数设置需要在data-options中设置

3、 属性参数配置:

loadMsg:加载远程数据,显示的信息

idField:select中选择提交值

textField:select中选择的显示值

mode:定义如何加载DataGrid的数据文本的方式。当设置为“'remote'”模式下,什么类型的用户将被发送http请求参数名为'q'的服务器,以获取新的数据

filter:当数据加载时”mode”设置为”local”,如何选择本地数据源,返回true选择行

4、 方法

options():返回选择对象

grid():返回选择dataGrid对象

setValues(values):设置元素值数组

setValue(value):设置组件的值

clear():清除组件的值

Javascript 相关文章推荐
javascript下判断一个对象是否具有指定名称的属性的的代码
Jan 11 Javascript
关于jquery动态增减控件的一些想法和小插件
Aug 01 Javascript
基于jquery循环map功能的代码
Feb 26 Javascript
jquery validate在ie8下的bug解决方法
Nov 13 Javascript
JavaScript中的变量作用域介绍
Dec 31 Javascript
JavaScript获取网页中第一个链接ID的方法
Apr 03 Javascript
jQuery实现页面内锚点平滑跳转特效的方法总结
May 11 Javascript
jQuery 更改checkbox的状态,无效的解决方法
Jul 22 Javascript
详解Bootstrap各式各样的按钮(推荐)
Dec 13 Javascript
浅谈React和Redux的连接react-redux
Dec 04 Javascript
JS中getElementsByClassName与classList兼容性问题解决方案分析
Aug 07 Javascript
vux-scroller实现移动端上拉加载功能过程解析
Oct 08 Javascript
jQuery实现的导航动画效果(附demo源码)
Apr 01 #Javascript
JS中frameset框架弹出层实例代码
Apr 01 #Javascript
JS操作COOKIE实现备忘记录的方法
Apr 01 #Javascript
Atitit.js的键盘按键事件捆绑and事件调度
Apr 01 #Javascript
JS中多步骤多分步的StepJump组件实例详解
Apr 01 #Javascript
js+flash实现的5图变换效果广告代码(附演示与demo源码下载)
Apr 01 #Javascript
js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解
Apr 01 #Javascript
You might like
电脑硬件及电脑配置知识大全
2020/03/17 数码科技
php4的session功能评述(三)
2006/10/09 PHP
jq的get传参数在utf-8中乱码问题的解决php版
2008/07/23 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
2015/07/06 PHP
学习php设计模式 php实现适配器模式
2015/12/07 PHP
基于PHP生成简单的验证码
2016/06/01 PHP
Yii2创建控制器(createController)方法详解
2016/07/23 PHP
Laravel 队列使用的实现
2019/01/08 PHP
CL vs ForZe BO5 第五场 2.13
2021/03/10 DOTA
基于jquery实现的可以编辑选择的下拉框的代码
2010/11/19 Javascript
JavaScript验证图片类型(扩展名)的函数分享
2014/05/05 Javascript
Javascript 拖拽雏形中的一些问题(逐行分析代码,让你轻松了拖拽的原理)
2015/01/23 Javascript
js实时获取窗口大小变化的实例代码
2016/11/18 Javascript
利用BootStrap的Carousel.js实现轮播图动画效果
2016/12/21 Javascript
微信小程序实现滑动删除效果
2017/05/19 Javascript
JavaScript实现的数字与字符串转换功能示例
2017/08/23 Javascript
解决vue.js在编写过程中出现空格不规范报错的问题
2017/09/20 Javascript
JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析
2018/07/26 Javascript
[19:24]DOTA2客户端使用指南 一分钟快速设置轻松超神
2013/09/24 DOTA
用Python制作简单的朴素基数估计器的教程
2015/04/01 Python
Python实现网站注册验证码生成类
2017/06/08 Python
Python实现将数据写入netCDF4中的方法示例
2018/08/30 Python
基于Django ORM、一对一、一对多、多对多的全面讲解
2019/07/26 Python
FFrpc python客户端lib使用解析
2019/08/24 Python
python-numpy-指数分布实例详解
2019/12/07 Python
Pandas时间序列:时期(period)及其算术运算详解
2020/02/25 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
2020/03/23 Python
Pyinstaller加密打包应用的示例代码
2020/06/11 Python
皮肤科医师岗位职责
2013/12/04 职场文书
医务工作者先进事迹材料
2014/01/26 职场文书
DIY手工制作经营店创业计划书
2014/02/01 职场文书
厨师长岗位职责范本
2014/08/25 职场文书
三年级上册科学教学计划
2015/01/21 职场文书
Python下opencv使用hough变换检测直线与圆
2021/06/18 Python
分位数回归模型quantile regeression应用详解及示例教程
2021/11/02 Python
浅谈Node的内存泄露问题
2022/05/06 NodeJs