简介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 相关文章推荐
jQuery源码分析-05异步队列 Deferred 使用介绍
Nov 14 Javascript
网页运行时提示对象不支持abigimage属性或方法
Aug 10 Javascript
基于javascript实现泡泡大冒险网页版小游戏
Mar 23 Javascript
JS 根据子网掩码,网关计算出所有IP地址范围示例
Apr 23 Javascript
JS获取鼠标相对位置的方法
Sep 20 Javascript
.net MVC+Bootstrap下使用localResizeIMG上传图片
Apr 21 Javascript
Ionic学习日记实现验证码倒计时
Feb 08 Javascript
完美解决axios在ie下的兼容性问题
Mar 05 Javascript
基于jQuery实现Ajax验证用户名是否可用实例
Mar 25 jQuery
node实现分片下载的示例代码
Oct 17 Javascript
taro 实现购物车逻辑的实例代码
Jun 05 Javascript
vue cli3.0打包上线静态资源找不到路径的解决操作
Aug 03 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状态的实现代码
2014/05/09 PHP
CodeIgniter表单验证方法实例详解
2016/03/03 PHP
微信 开发生成带参数的二维码的实例
2016/11/23 PHP
js判断变量是否空值的代码
2008/10/26 Javascript
为radio类型的INPUT添加客户端脚本(附加实现JS来禁用onClick事件思路代码)
2010/11/11 Javascript
jQuery1.6 使用方法一
2011/11/23 Javascript
防止浏览器记住用户名及密码的简单实用方法
2013/04/22 Javascript
Extjs4 Treegrid 使用心得分享(经验篇)
2013/07/01 Javascript
jquery删除指定的html标签并保留标签内文本内容的方法
2014/04/02 Javascript
javascript常用的方法整理
2015/08/20 Javascript
通过设置CSS中的position属性来固定层的位置
2015/12/14 Javascript
jQuery插件echarts实现的多柱子柱状图效果示例【附demo源码下载】
2017/03/04 Javascript
JavaScript设计模式之单例模式详解
2017/06/09 Javascript
Vue 2中ref属性的使用方法及注意事项
2017/06/12 Javascript
VUE在for循环里面根据内容值动态的加入class值的方法
2018/08/12 Javascript
解决vue-cli webpack打包后加载资源的路径问题
2018/09/25 Javascript
js实现网页同时进行多个倒计时功能
2019/02/25 Javascript
this.$toast() 了解一下?
2019/04/18 Javascript
Vue多环境代理配置方法思路详解
2019/06/21 Javascript
Python操作Access数据库基本步骤分析
2016/09/19 Python
python正则分析nginx的访问日志
2017/01/17 Python
深入理解Python3中的http.client模块
2017/03/29 Python
Python中你应该知道的一些内置函数
2017/03/31 Python
Python使用回溯法子集树模板解决迷宫问题示例
2017/09/01 Python
Python中import机制详解
2017/11/14 Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
2017/11/14 Python
pycharm访问mysql数据库的方法步骤
2019/06/18 Python
python迭代器常见用法实例分析
2019/11/22 Python
Python解析微信dat文件的方法
2020/11/30 Python
CSMA/CD介质访问控制协议
2015/11/17 面试题
在对linux系统分区进行格式化时需要对磁盘簇(或i节点密度)的大小进行选择,请说明选择的原则
2012/01/13 面试题
护士自我鉴定范文
2013/10/06 职场文书
《蜗牛的奖杯》教后反思
2014/04/24 职场文书
学雷锋先进个人事迹
2014/05/26 职场文书
计算机系本科生求职信
2014/05/31 职场文书
2015年党建工作总结
2015/03/30 职场文书