easyui combobox模糊搜索
2018-06-24 02:15:19来源:未知 阅读 ()
combobox实现模糊搜索功能
<input class="easyui-combobox" id="hybq_PADD" name="hybq_PADD" data-options="valueField:'id',textField:'text',required:true, panelHeight:'auto', panelMaxHeight:200,panelMinHeight:100" validType="name[0,60]" style="width: 300px; height: 24px;" type="text" />
<script>
var comboboxData = [{id:'1',text: 'abc'},{id:'2',text: 'bca'},{id:'3',text: 'cba'},{id:'4',text: 'cas'},{id:'5',text: 'asd'}];
var comboboxValue = [];
$('#hybq_PADD').combobox({
//prompt:'输入首关键字自动检索',
data: comboboxData,
//url:'${path }/portal/designer/tree',
editable: true,
multiple: true,
hasDownArrow: false,
formatter: function (row) {
var opts = $(this).combobox('options');
console.log(row)
console.log("发: "+row[opts.textField])
return '<input type="checkbox" class="combobox-checkbox">' + row[opts.textField]
},
onShowPanel: function () {
var opts = $(this).combobox('options');
var target = this;
var values = $(target).combobox('getValues');
$.map(values, function (value) {
var el = opts.finder.getEl(target, value);
el.find('input.combobox-checkbox')._propAttr('checked', true);
})
},
onLoadSuccess: function () {
var opts = $(this).combobox('options');
var target = this;
var values = $(target).combobox('getValues');
$.map(values, function (value) {
var el = opts.finder.getEl(target, value);
el.find('input.combobox-checkbox')._propAttr('checked', true);
})
//绑定失焦事件
$('#hybq_PADD').next('.combo').find('input').blur(function (){
var val = $(this).val()
if(val != '') {
val = val.trim();
var arr = val.split(',');
var newArr = [];
for(var j = 0; j < arr.length; j++) {
for(var i = 0; i < comboboxData.length; i++) {
if(comboboxData[i][opts.textField] == arr[j]) {
newArr.push(arr[j]);
}
}
}
$('#hybq_PADD').combobox("setValues",$('#hybq_PADD').combobox("getValues"))
}
});
},
onSelect: function (row) {
var opts = $(this).combobox('options');
var el = opts.finder.getEl(this, row[opts.valueField]);
el.find('input.combobox-checkbox')._propAttr('checked', true);
},
onUnselect: function (row) {
var opts = $(this).combobox('options');
var el = opts.finder.getEl(this, row[opts.valueField]);
el.find('input.combobox-checkbox')._propAttr('checked', false);
},
filter: function(text, row) {
var opts = $(this).combobox('options');
var el = opts.finder.getEl(this, row[opts.valueField]);
if(text != '' && row[opts.textField].indexOf(text) == 0) {
el.find('input.combobox-checkbox')._propAttr('checked', false);
}
for ( var r in row) {
if(row[opts.textField].indexOf(text) == 0 && row[opts.textField] == text) {
el.find('input.combobox-checkbox')._propAttr('checked', true);
break;
}
}
return row[opts.textField].indexOf(text) == 0;
},
onChange: function(newValue, oldValue) {
comboboxValue = newValue;
var opts = $(this).combobox('options');
var data = $(this).combobox('options').data;
for(var j = 0; j< data.length; j++) {
var el = opts.finder.getEl(this, data[j][opts.valueField]);
el.find('input.combobox-checkbox')._propAttr('checked', false);
}
for(var i = 0; i < newValue.length; i++) {
var el = opts.finder.getEl(this, newValue[i]);
el.find('input.combobox-checkbox')._propAttr('checked', true);
}
}
});
</script>

标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:jQuery快速入门
- jQuery EasyUI tree增加搜索功能的实现方法 2019-12-17
- TopJUI可编辑表格的列根据返回数据判断是使用 combobox 还是 2019-05-24
- Easyui datagrid 实现表格记录拖拽 2019-01-21
- Easyui datagrid 设置内容超过单元格宽度时自动换行显示 2019-01-16
- easyui 前端实现分页 复制就能用 2019-01-15
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
