关于ExtJs智能联想输入框的实现方法_Android, Python及开发编程讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Android, Python及开发编程讨论区 »
总帖数
8
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 5832 | 回复: 7   主题: 关于ExtJs智能联想输入框的实现方法        下一篇 
java_along
注册用户
等级:上尉
经验:771
发帖:36
精华:0
注册:2014-2-17
状态:离线
发送短消息息给java_along 加好友    发送短消息息给java_along 发消息
发表于: IP:您无权察看 2014-3-20 23:47:40 | [全部帖] [楼主帖] 楼主

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

今天看到有人问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();
});




赞(0)    操作        顶端 
java_along
注册用户
等级:上尉
经验:771
发帖:36
精华:0
注册:2014-2-17
状态:离线
发送短消息息给java_along 加好友    发送短消息息给java_along 发消息
发表于: IP:您无权察看 2014-3-20 23:49:01 | [全部帖] [楼主帖] 2  楼

北京联动北方科技有限公司
这是实现的效果,有疑问请跟帖,有问必答~


赞(0)    操作        顶端