zoukankan      html  css  js  c++  java
  • extjs Combobox动态加载数据问题,mode:local 还是remote

    1. var fabircTypeDs = new Ext.data.Store({  
    2.         proxy: new Ext.data.HttpProxy({  
    3.             url: 'province.do'  
    4.         }),  
    5.         reader: new Ext.data.JsonReader({},['pname','pid']),  
    6.         remoteSort: false  
    7.      });  
    8.      fabircTypeDs.load();  
    9.   
    10.  formPanel = new Ext.form.FormPanel({            
    11.                 bodyStyle:'padding-top:6px;',//设置控件边类型            
    12.                 defaultType:'textfield',//FormPanel内元素默认类型             
    13.                 labelAlign:'right',//设置控件的标题对齐方式  
    14.                 labelWidth:55,// 指定标签的默认长度  
    15.                 labelPad:0,// 标签与字段录入框之间的空白  
    16.                 frame:true,//设置控件边角圆弧过度        
    17.                 defaults:{//FormPanel默认设置  
    18.                     allowBlank:true,  
    19.                     158  
    20.                 },             
    21.                 items:[  
    22.                     new Ext.form.ComboBox({  
    23.                         name:'provincename',  
    24.                         fieldLabel:'省份',  
    25.                         store:fabircTypeDs,  
    26.                         blankText:'全部',  
    27.                         emptyText:'全部',  
    28.                         mode:'remote',  
    29.                         editable:false,  
    30.                         selectOnFocus:true  
    31.                     }),  

     上面是我创建Store和ComboBox的代码,想要通过proince.do从数据库读取数据,后台采用SpringMVC等框架,现在是页面出来没问题,但是

    ComboBox的数据没有加载上,也就是请求根本没有到达后台,希望哪位能指点一下,我想不到哪里出了问题,mode属性我也设置了remote。

    解决方案

    这里的关键点在这里: 
    fabircTypeDs.load(); 

    mode:'remote', 

    mode:'local' 或者client

    fabircTypeDs.load(); 表示你打开页面时就将数据取到本地,这样你下拉列表时就不需要取去服务器取数据,如果你要没加上这一句的话,你去下拉那个列表时就会动态去服务器取数据, 所以它会显示一下'loading...',这样你就明白为什么要设置mode了,mode:'remote'指的是要动态去服务器端拿数据,这样你就不 能加fabircTypeDs.load(),而mode:'local'是取本地数据的也就是javascirpt(内存)中的数据,这样当然不要加上 fabircTypeDs.load()啦!

     

    还要指定displayField:"name",valueField:"id"吧

    来源:http://www.iteye.com/topic/187723

     

    引用自:http://blog.163.com/xiao_mege/blog/static/72942753201132983543104/

  • 相关阅读:
    linux sysfs (2)
    微软——助您启动云的力量网络虚拟盛会
    Windows Azure入门教学系列 全面更新啦!
    与Advanced Telemetry创始人兼 CTO, Tom Naylor的访谈
    Windows Azure AppFabric概述
    Windows Azure Extra Small Instances Public Beta版本发布
    DataMarket 一月内容更新
    和Steve, Wade 一起学习如何使用Windows Azure Startup Tasks
    现实世界的Windows Azure:与eCraft的 Nicklas Andersson(CTO),Peter Löfgren(项目经理)以及Jörgen Westerling(CCO)的访谈
    正确使用Windows Azure 中的VM Role
  • 原文地址:https://www.cnblogs.com/zhangmu126/p/5286257.html
Copyright © 2011-2022 走看看