原文地址:http://blog.csdn.net/liuguxing/article/details/8623190

  1. 项目中经常用到选择框,需要从后台异步加载数据,可单独写一个组件进行加载
  1. App.ComboBox = function(combo){
  2. var comboBox = new Ext.form.ComboBox({
  3. store:new Ext.data.JsonStore({
  4. autoLoad : false,                                   //设置为false,自己控制什么时候加载数据
  5. url:__ctxPath+"/code/get.do?name="+combo.codeName,
  6. root: 'data',
  7. fields :  ['name','id'],
  8. listeners:{
  9. load:function(){
  10. comboBox.setValue(comboBox.getValue());
  11. }
  12. }
  13. }),
  14. name:combo.name,
  15. fieldLabel:combo.fieldLabel,
  16. id:combo.id,
  17. hiddenName:combo.hiddenName,    //动态生成一个以指定名称命名的隐藏域用来存放值数据
  18. displayField:'name',
  19. valueField :'id',
  20. typeAhead:false,            //值为true时在经过指定延迟(typeAheadDelay)后弹出并自动选择输入的文本,如果该文本与已知的值相匹配
  21. mode:'local',               //如果ComboBox读取本地数据则将值设为'local'(默认为 'remote' 表示从服务器读取数据)。如果设置为remote,并且autoLoad=true,就会加载两次
  22. triggerAction:'all',
  23. emptyText:'请选择...'
  24. });
  25. return comboBox;
  26. };

编辑数据的时候需要默认选中某一项,可编写函数

  1. App.selectComboBox = function(hiddenName,comboBoxId,value){
  1. <span style="white-space:pre">  </span>//需要根据value获取到显示值
  2. var combo = Ext.getCmp(comboBoxId);
  3. var range = combo.getStore().getRange();
  4. if(range != null && range.length>0){
  5. var displayName = value;
  6. for(var i=0;i<range.length;i++){
  7. if(value == range[i].data.id){
  8. displayName = range[i].data.name;
  9. }
  10. }
  11. }
  12. combo.setValue(displayName);<span style="white-space:pre">      </span>//设置显示值<span style="white-space:pre">                </span>
  13. Ext.query("*[name="+hiddenName+"]")[0].value = value;<span style="white-space:pre"> </span>//设置提交到后台的值
  14. }

需要注意的是,在调用App.selectComboBox之前,必须先调用comboBox.getStore().load(); 加载数据,不然上面getRange()获取不到数据。

[转]Ext ComboBox 默认选中某一项的更多相关文章

  1. easyui的combobox默认选中第一个选项

    pmProjectSelect.combobox({ editable:false, width:165, url : ctx + '/PmProject/findByProjectMgr', //c ...

  2. C# winform combobox默认选中项方法

    https://blog.csdn.net/easyboot/article/details/68062196 可以使用 Combobox.SelectText = “默认选中文本”; 但是如果Com ...

  3. WPF ComboBox 默认选中无效

    在WPF开发当中,我发现ComboBox的默认选中逻辑失效了,仔细查找后发现后台逻辑并没有出现问题. 测试后发现在XAML中,ComBoBox控件的SelectedValue属性需要写在ItemSou ...

  4. js 默认选中分页条件项

    <table border="0" cellspacing="0" cellpadding="0" height="100% ...

  5. Easyui combobox如何默认选中第一项???

    以下代码可以实现combobox默认选中第一项,在实际开发中我们可能会用到! // 处理combobox默认选中的问题 <input id="user_type" class ...

  6. 默认选中ComboBox的某一项

    如: 让它选中“统计今天”(控件Name为cobListTime) 方法: 1.cobListTime.Text = cobListTime.Items[0].ToString();//默认选中第一个 ...

  7. [转]extjs grid的Ext.grid.CheckboxSelectionModel默认选中解决方法

    原文地址:http://379548695.iteye.com/blog/1167234 grid的复选框定义如下:   var sm = new Ext.grid.CheckboxSelection ...

  8. struts2设置<s:select>默认选中项的方法

    struts2的select标签中,常用的有以下几个属性:(1)struts2中的select 标签中,必须设置的属性只有一个,即是list.(2)select标签的list中必须有值,不然会报错.如 ...

  9. 【WPF】ListBox使用DataTemplate 以及默认选中第一项Item

    ListBox中DataTemplate的用法如下 . <ListBox x:Name="areaLB" ItemsSource="{Binding AreaNum ...

随机推荐

  1. Inplace Search on document libraries and lists is not working

    [http://sharepointfarmer.com/inplace-search-on-document-libraries-and-lists-is-not-working/] I ran i ...

  2. IOS开发基础知识--碎片35

    1:iOS视图控制对象生命周期 init-初始化程序 viewDidLoad-加载视图 viewWillAppear-UIViewController对象的视图即将加入窗口时调用: viewDidAp ...

  3. iOS开发之Runtime机制深入解析

    本篇主要讲述在 OC 开发中主要涉及到的运行时机制: 运行时的工作: 运行时在 OC 中的工作:OC 语言的设计模式决定了尽可能的把程序从编译和链接时推迟到运行时.只要有可能,OC 总是使用动态的方式 ...

  4. Android 第一http请求访问慢,以后就快了的问题

    android的服务端是用MVC+ef,第一次访问特别慢,第一次以后就快了. 在网上找了很多原因,解决不了.后来发现是应用程序池的问题,准确说是ef的问题,应用程序池被回收了,请求就慢了,

  5. git review & devops过程

    自己搭建的devops环境是gitlab/gerrit/jenkins 1. 首先自己checkout一个自己的代码分支,一般不要在master上做直接修改 2. 修改后git add file,   ...

  6. [翻译]——SQL Server使用链接服务器的5个性能杀手

    前言: 本文是对博客http://www.dbnewsfeed.com/2012/09/08/5-performance-killers-when-working-with-linked-server ...

  7. SQL Server 2008 R2——CROSS APPLY 根据数据出现的次数和时间来给新字段赋值

    =================================版权声明================================= 版权声明:原创文章 禁止转载  请通过右侧公告中的“联系邮 ...

  8. JDBC-Oracle

    例子: publicclassTestJdbc { public static void main(String[] args)throwsException { //程序入口,并抛出异常 Class ...

  9. Linux下磁盘挂载

    公司硬盘不够用了,新买了一个存储,需要挂载到现在的系统上.前期的步骤就不说了,运维全部搞定,无非是硬件和网络那一套,这里只说分配到本人后在Linux下如何挂载. 具体步骤如下: 1.查看是否已经分配 ...

  10. mysql常用基本操作

    mysql常用操作 查看都有哪些库 show databases; 查看某个库的表 use 库名; show tables; 查看表的字段 desc 表名; 当前是哪个用户 select user() ...