联想输入 java,关于ExtJs智能联想输入框的实现方法_Android, Python及开发编程讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linu...

今天第一天发帖,求支持求鼓励~

今天看到有人问ExtJs有没有 智能联想的功能

答案是肯定,怎么实现呢?

利用Ext里面的Ext.form.field.ComboBoxView 控件,

是的,是一个下拉菜单一样的东西。

那么我们要实现智能联想的功能,有几步:

1:你首先要让你的combo可编辑,即 editable:true

这里有一点要声明的是,ExtJs的文档很详细,当你不懂哪个配置的时候搜索下,会得到你满意的答案的。

2:可编辑之后呢,当你输入的时候,你需要让combo出现个下拉菜单

这个就比较麻烦了,首先你要先创建个Ext.data.Store,你要让人家只能提示,你总要给人家数据吧。

这里我先用静态数据示范,就是直接写死的数据,当然从数据库查也是可以的。

3:有数据之后,你要设置下queryMode:"local"

因为我是本地写死的数据,所以查询模式应该是local。

4:combo右边有个下拉按钮,这个是我们不需要的,所以去掉,方法:hideTrigger:true

以上是思路。

下面是代码:

Ext.onReady(function(){

var store=Ext.create("Ext.data.Store",{

fields:[{

name:"t1",

type:"auto"

},{

name:"t2",

type:"auto"

}],

data:[{

t1:"aa",

t2:"bb"

},{

t1:"bb",

t2:"bb"

},{

t1:"cc",

t2:"bb"

}],

autoLoad:true

});

Ext.create("Ext.panel.Panel",{

title:"aa",

width:300,

height:400,

items:[{

xtype:"combo",

hideTrigger:true,

store:store,

displayField: 't1',

valueField: 't2',

queryMode:"local",

editable:true,

triggerAction:"all"

}],

renderTo:Ext.getBody()

}).show();

});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值