简介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 相关文章推荐
网站导致浏览器崩溃的原因总结(多款浏览器) 推荐
Apr 15 Javascript
jQuery弹出层始终垂直居中相对于屏幕或当前窗口
Apr 01 Javascript
jquery选择器之基本过滤选择器详解
Jan 27 Javascript
etmvc+jQuery EasyUI+combobox多值操作实现角色授权实例
Nov 09 Javascript
学好js,这些js函数概念一定要知道【推荐】
Jan 19 Javascript
jquery实现图片上传前本地预览
Apr 28 jQuery
Vue实现类似Spring官网图片滑动效果方法
Mar 01 Javascript
Koa从零搭建到Api实现项目的搭建方法
Jul 30 Javascript
JavaScript获取页面元素的常用方法详解
Sep 28 Javascript
Vue表单控件数据绑定方法详解
Feb 05 Javascript
webpack3.0升级4.0的方法步骤
Apr 02 Javascript
JavaScript实现轮播图特效
Apr 10 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
php下通过伪造http头破解防盗链的代码
2010/07/03 PHP
mysql_num_rows VS COUNT 效率问题分析
2011/04/23 PHP
PHP父类调用子类方法的代码例子
2014/04/09 PHP
YiiFramework入门知识点总结(图文教程)
2015/12/28 PHP
PHP实现的自定义数组排序函数与排序类示例
2016/11/18 PHP
PHP匿名函数(闭包函数)详解
2019/03/22 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
Javascript &amp; DHTML 实例编程(教程)DOM基础和基本API
2007/06/02 Javascript
Jquery 快速构建可拖曳的购物车DragDrop
2009/11/30 Javascript
javascript+iframe 实现无刷新载入整页的代码
2010/03/17 Javascript
ExtJS4如何自动生成控制grid的列显示、隐藏的checkbox
2014/05/02 Javascript
jQuery下拉友情链接美化效果代码分享
2015/08/26 Javascript
基于JavaScript实现Json数据根据某个字段进行排序
2015/11/24 Javascript
JavaScript小技巧整理篇(非常全)
2016/01/26 Javascript
JavaScript九九乘法口诀表的简单实现
2016/10/04 Javascript
jquery validation验证表单插件
2017/01/07 Javascript
详解AngularJS1.6版本中ui-router路由中/#!/的解决方法
2017/05/22 Javascript
JavaScript中最常用的10种代码简写技巧总结
2017/06/28 Javascript
ES6对象操作实例详解
2020/05/23 Javascript
vue实现公告栏文字上下滚动效果的示例代码
2020/06/16 Javascript
如何HttpServletRequest文件对象并储存
2020/08/14 Javascript
[02:29]DOTA2英雄基础教程 陈
2013/12/17 DOTA
[01:19:46]EG vs Secret 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
python实现读取命令行参数的方法
2015/05/22 Python
python实现输入数字的连续加减方法
2018/06/22 Python
解决Python内层for循环如何break出外层的循环的问题
2019/06/24 Python
python中68个内置函数的总结与介绍
2020/02/24 Python
opencv-python的RGB与BGR互转方式
2020/06/02 Python
HTML5实现无刷新修改URL的方法
2019/11/14 HTML / CSS
德国孕妇装和婴童服装网上商店:bellybutton
2018/04/12 全球购物
美国演唱会和体育门票购买网站:Ticketnetwork
2018/10/19 全球购物
房屋转让协议书范本
2014/04/11 职场文书
优秀少先队员事迹材料
2014/12/24 职场文书
学习雷锋精神活动总结
2015/02/06 职场文书
Nginx 负载均衡是什么以及该如何配置
2021/03/31 Servers
Android开发EditText禁止输入监听及InputFilter字符过滤
2022/06/10 Java/Android