原文地址: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. Sharepoint学习笔记—习题系列--70-573习题解析 -(Q142-Q143)

    Question 142You have a Feature that contains an image named ImageV1.png.You plan to create a new ver ...

  2. iOS之常用宏定义

    下面我为大家提供一些常用的宏定义! 将这些宏定义 加入到.pch使用 再也不用 用一次写一次这么长的程序了 //-------------------获取设备大小------------------- ...

  3. Atitit.木马病毒websql的原理跟个设计

    Atitit.木马病毒websql的原理跟个设计 1. Keyword Wsql { var sql="select "+p.txt+" as t,"+p.v+ ...

  4. Linux系统查看系统是32位还是64位方法总结

    这篇博客是总结.归纳查看Linux系统是32位还是64位的一些方法,很多内容来自网上网友的博客.本篇只是整理.梳理这方面的知识,方便自己忘记的时候随时查看. 方法1:getconf LONG_BIT ...

  5. [MySQL Reference Manual] 10 全球化

    10.全球化 本章主要介绍全球化,包含国际化和本地化,的一些问题: ·         MySQL在语句中支持的字符集 ·         如何为服务配置不同的字符集 ·         选择错误信息 ...

  6. JavaScript:内存泄露、性能调优

    1.在进行JS内存泄露检查之前,先要了解JS的内存管理: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Manageme ...

  7. 漫谈C++11 Thread库之原子操作

    我在之前一篇博文<漫谈C++11 Thread库之使写多线程程序>中,着重介绍了<thread>头文件中的std::thread类以及其上的一些基本操作,至此我们动手写多线程程 ...

  8. Bootstrap 按钮

    本章将通过实例讲解如何使用 Bootstrap 按钮.任何带有 class .btn 的元素都会继承圆角灰色按钮的默认外观.但是 Bootstrap 提供了一些选项来定义按钮的样式,具体如下表所示: ...

  9. 代理延迟加载中proxy和弄no-proxy区别

    Child   <-   many-to-one   ->Parent         class   Child   {         private   Parent   paren ...

  10. 第2章 Linux系统安装(1)_VMware安装与使用

    1. VMware虚拟机安装与使用 1.1 VMware简介 VMware是一款虚拟PC的软件,可以在现有的操作系统上虚拟出一个新的硬件环境,相当于模拟出一台新的PC,以此来实现一台机器上真正同时运行 ...