简介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 相关文章推荐
asp 取文本框名称代码
Dec 02 Javascript
JS 类型转换常见方法小结
May 31 Javascript
滚动条响应鼠标滑轮事件实现上下滚动的js代码
Jun 30 Javascript
jQuery控制li上下循环滚动插件用法实例(附demo源码下载)
May 28 Javascript
js导出excel文件的简洁方法(推荐)
Nov 02 Javascript
ES6入门教程之Iterator与for...of循环详解
May 17 Javascript
vue.js数据绑定的方法(单向、双向和一次性绑定)
Jul 13 Javascript
vue 组件 全局注册和局部注册的实现
Feb 28 Javascript
利用js实现前后台传送Json的示例代码
Mar 29 Javascript
详解在create-react-app使用less与antd按需加载
Dec 06 Javascript
JS实现的贪吃蛇游戏案例详解
May 01 Javascript
vite2.0+vue3移动端项目实战详解
Mar 03 Vue.js
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
咖啡产品发展的三大浪潮
2021/03/04 咖啡文化
php文档工具PHP Documentor安装与使用方法
2016/01/25 PHP
利用PHP将图片转换成base64编码的实现方法
2016/09/13 PHP
php获取文章内容第一张图片的方法示例
2017/07/03 PHP
php 使用html5 XHR2实现上传文件与进度显示功能示例
2020/03/03 PHP
锋利的jQuery 第三章章节总结的例子
2010/03/23 Javascript
用jquery写的一个万年历(自写)
2014/01/20 Javascript
JS按回车键实现登录的方法
2014/08/25 Javascript
js实现tab切换效果实例
2015/09/16 Javascript
JS使用cookie设置样式的方法
2016/06/30 Javascript
jQuery中Chosen三级联动功能实例代码
2017/03/07 Javascript
Centos6.8下Node.js安装教程
2017/05/12 Javascript
NodeJs通过async/await处理异步的方法
2017/10/09 NodeJs
JS中移除非数字最多保留一位小数
2018/05/09 Javascript
详解Vue源码学习之callHook钩子函数
2018/07/25 Javascript
vue点击input弹出带搜索键盘并监听该元素的方法
2018/08/25 Javascript
React 实现拖拽功能的示例代码
2019/01/06 Javascript
Js视频播放器插件Video.js使用方法详解
2020/02/04 Javascript
js仿淘宝放大镜效果
2020/12/28 Javascript
Python 第一步 hello world
2009/09/25 Python
在Python中分别打印列表中的每一个元素方法
2018/11/07 Python
python 实现得到当前时间偏移day天后的日期方法
2018/12/31 Python
python做接口测试的必要性
2019/11/20 Python
匡威比利时官网:Converse Belgium
2017/04/13 全球购物
Ray-Ban雷朋瑞典官方网站:全球领先的太阳眼镜品牌
2019/08/22 全球购物
科室工作的个人自我评价
2013/10/30 职场文书
《灯光》教学反思
2014/02/08 职场文书
党员组织关系介绍信
2014/02/13 职场文书
2014年冬季防火方案
2014/05/21 职场文书
教师年终个人总结
2015/02/11 职场文书
国庆节慰问信
2015/02/15 职场文书
乡镇党建工作总结2015
2015/05/19 职场文书
黑白记忆观后感
2015/06/18 职场文书
《画家和牧童》教学反思
2016/02/17 职场文书
关于Vue Router的10条高级技巧总结
2021/05/06 Vue.js
Python中的xlrd模块使用整理
2021/06/15 Python