简介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 相关文章推荐
JS input 数字验证代码
Jul 30 Javascript
JavaScript设计模式之代理模式介绍
Dec 28 Javascript
js实现文本框只允许输入数字并限制数字大小的方法
Aug 19 Javascript
jQuery纵向导航菜单效果实现方法
Dec 19 Javascript
JS对象的深度克隆方法示例
Mar 16 Javascript
详解基于webpack和vue.js搭建开发环境
Apr 05 Javascript
Node+Express+MongoDB实现登录注册功能实例
Apr 23 Javascript
强大的JavaScript响应式图表Chartist.js的使用
Sep 13 Javascript
Vue CLI3基础学习之pages构建多页应用
Jun 02 Javascript
如何解决js函数防抖、节流出现的问题
Jun 17 Javascript
Vue+iview+webpack ie浏览器兼容简单处理
Sep 20 Javascript
微信小程序学习总结(二)样式、属性、模板操作分析
Jun 04 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
oracle资料库函式库
2006/10/09 PHP
php学习之 数组声明
2011/06/09 PHP
php中字符查找函数strpos、strrchr与strpbrk用法
2014/11/18 PHP
php中mail函数发送邮件失败的解决方法
2014/12/24 PHP
Laravel关联模型中过滤结果为空的结果集(has和with区别)
2018/10/18 PHP
JavaScript监测ActiveX控件是否已经安装过的代码
2008/09/02 Javascript
一句话JavaScript表单验证代码
2009/08/02 Javascript
js 鼠标拖动对象 可让任何div实现拖动效果
2009/11/09 Javascript
如何使用Javascript获取距今n天前的日期
2013/07/08 Javascript
js中style.display=&quot;&quot;无效的解决方法
2014/10/30 Javascript
JavaScript中String.prototype用法实例
2015/05/20 Javascript
jQuery实现点击后高亮背景固定显示的菜单效果【附demo源码下载】
2016/09/21 Javascript
js实现移动端微信页面禁止字体放大
2017/02/16 Javascript
原生js实现旋转木马轮播图效果
2017/02/27 Javascript
微信小程序实现多选功能
2018/11/04 Javascript
Python爬取三国演义的实现方法
2016/09/12 Python
django上传图片并生成缩略图方法示例
2017/12/11 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
2018/08/05 Python
解决python打不开文件(文件不存在)的问题
2019/02/18 Python
django项目环境搭建及在虚拟机本地创建django项目的教程
2019/08/02 Python
使用matlab或python将txt文件转为excel表格
2019/11/01 Python
Keras—embedding嵌入层的用法详解
2020/06/10 Python
Python实现小黑屋游戏的完整实例
2021/01/06 Python
利用CSS3实现开门效果实例源码
2016/08/22 HTML / CSS
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
HTML5 canvas基本绘图之图形组合
2016/06/27 HTML / CSS
JSF界面控制层技术
2013/06/17 面试题
中专毕业自我鉴定
2013/10/16 职场文书
导游实习生自荐书
2014/01/28 职场文书
官僚主义现象查摆问题整改措施
2014/10/04 职场文书
2014年教师个人工作总结
2014/11/10 职场文书
幼儿园迎新生欢迎词
2015/09/30 职场文书
浅谈PHP7中的一些小技巧
2021/05/29 PHP
Django实现WebSocket在线聊天室功能(channels库)
2021/09/25 Python
win11如何查看端口是否被占用? Win11查看端口是否占用的技巧
2022/04/05 数码科技
Python爬虫 简单介绍一下Xpath及使用
2022/04/26 Python