• extjs 远程数据源


    1本地数据源组合框

    [plain] view plaincopy
     
    1. Ext.onReady(function(){  
    2.     //创建数据模型  
    3.     Ext.regModel('PostInfo', {  
    4.         fields: [{name: 'province'}, {name: 'post'}]  
    5.         });  
    6.   
    7.         //定义组合框中显示的数据源  
    8.         var postStore = Ext.create('Ext.data.Store', {  
    9.             model: 'PostInfo',  
    10.             data: [  
    11.             {province:'北京', post: '100000'},  
    12.             {province:'通县', post: '101100'},  
    13.             {province:'昌平', post: '102200'},  
    14.             {province:'大兴', post: '102600'},  
    15.             {province:'密云', post: '101500'},  
    16.             {province:'延庆', post: '102100'},  
    17.             {province:'顺义', post: '101300'},  
    18.             {province:'怀柔', post: '101400'}  
    19.             ]  
    20.     });  
    21.     //创建表单  
    22.     Ext.create('Ext.form.Panel', {  
    23.         title: 'Ext.form.field.ComboBox本地数据源示例',  
    24.             renderTo:Ext.getBody(),  
    25.             bodyPadding: 5,  
    26.             frame: true,  
    27.             height: 100,  
    28.              270,  
    29.             defaults: {//统一设置表单字段默认属性  
    30.             labelSeparator: ':', //分隔符  
    31.             labelWidth: 70, //标签宽度  
    32.              200, //字段宽度  
    33.             labelAlign: 'left'//标签对齐方式  
    34.         },   
    35.         items: [{  
    36.             xtype: 'combo',   
    37.             listConfig: {  
    38.             emptyText: '未找到匹配值', //当值不在列表时的提示信息  
    39.             maxHeight: 60 //设置下拉列表的最大高度为60像素  
    40.         },  
    41.         name: 'post',  
    42.         fieldLabel: '邮政编码',   
    43.         triggerAction: 'all',//单击除法按钮显示全部数据  
    44.         store: postStore, //设置数据源  
    45.         displayField: 'province',//定义要显示的字段  
    46.         valueField: 'post', //定义值字段  
    47.         queryMode: 'local', //本地模式  
    48.         forceSelection: true, //要求输入值必须在列表中存在  
    49.         typeAhead: true, //允许自动选择匹配的剩余部分文本  
    50.         value: '102600' //默认选择大兴  
    51.         }]  
    52.     });  
    53. });  

    2.远程数据源的组合框

    [plain] view plaincopy
     
    1. Ext.onReady(function(){  
    2.             //创建数据模型  
    3.             Ext.regModel('BookInfo', {  
    4.                 fields: [{name: 'bookName'}]  
    5.             });  
    6.             //定义组合框中显示的数据源  
    7.             var bookStore = Ext.create('Ext.data.Store', {  
    8.                 model: 'BookInfo',  
    9.                 proxy: {  
    10.                     type: 'ajax', //Ext.data.AjaxProxy  
    11.                     url: 'bookSearchServer.jsp',  
    12.                     reader: new Ext.data.ArrayReader({model: 'BookInfo'})  
    13.                 }  
    14.             });  
    15.             //创建表单  
    16.             Ext.create('Ext.form.Panel', {  
    17.               
    18.                 title: 'Ext.form.field.ComboBox远程数据源示例',  
    19.                 renderTo:Ext.getBody(),  
    20.                 bodyPadding: 5,  
    21.                 frame: true,  
    22.                 height: 100,  
    23.                  270,  
    24.                 defaults: {//统一设置表单字段默认属性  
    25.                     labelSeparator: ':', //分隔符  
    26.                     labelWidth: 70, //标签宽度  
    27.                      200, //字段宽度  
    28.                     labelAlign: 'left'//标签对齐方式  
    29.                 },   
    30.                 items: [{  
    31.                     xtype: 'combo',  
    32.                     fieldLabel: '书籍列表',   
    33.                     listConfig: {  
    34.                         loadingText: '正在加载书籍信息', //加载数据时显示的提示信息  
    35.                         emptyText: '未找到匹配值', //当值不在列表时的提示信息  
    36.                         maxHeight: 60 //设置下拉列表的最大高度为60像素  
    37.                     },  
    38.                     allQuery: 'allbook', //查询全部信息的查询字符串  
    39.                     minChars: 3, //下拉列表框自动选择当前用户需要输入的最小字符数量  
    40.                     queryDelay: 300, //查询延迟时间  
    41.                     queryParam: 'searchbook',//查询的名字  
    42.                     triggerAction: 'all', //单击触发按钮显示全部数据  
    43.                     store: bookStore, //设置数据源  
    44.                     displayField: 'bookName', //定义要显示的字段  
    45.                     valueField: 'bookName', //定义字段值  
    46.                     queryMode: 'remote'//远程模式  
    47.                 }]  
    48.             });  
    49.         });  



    bookSearchServer.jsp

    [plain] view plaincopy
     
      1. <%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>  
      2. <%  
      3. String path = request.getContextPath();  
      4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
      5. %>  
      6.     <%  
      7.         String bookName = request.getParameter("searchbook");  
      8.         String jav = "['java编程思想'],['java入门'],['javascript程序设计']";  
      9.         String cpp = "['c++编程思想'],['c++入门'],['c++程序设计']";  
      10.         String php = "['php编程思想'],['php入门'],['php程序设计']";  
      11.         String books = "";  
      12.           
      13.         if(bookName.equals("allbook")){  
      14.             books = "[" + jav + "," + cpp + "," +  php +  "]";  
      15.             response.getWriter().write(books);  
      16.             return;  
      17.         }else{  
      18.             bookName = bookName.substring(0, 3); //取查询字符串的前3个字符串  
      19.             if(bookName.equals("jav")){  
      20.                 books = "[" + jav + "]";  
      21.             }else if(bookName.equals("c++")){  
      22.                 books = "[" + cpp + "]";  
      23.             }else if(bookName.equals("php")){  
      24.                 books = "[" + php + "]";  
      25.             }else{  
      26.                 books = "[[没有数据'']]";  
      27.             }  
      28.             response.getWriter().write(books);  
      29.         }  
      30.      %>  
  • 相关阅读:
    logback
    GC
    常用JVM配置参数
    JVM
    linux
    简单的webService 实例
    [转载]Java 工程师成神之路
    ActiveMQ 在mac 上的安装与运行
    subline3 + emmet 加快前端开发效率
    Spring WebMVC 4.1.4返回json时导致的 406(Not Acceptable)
  • 原文地址:https://www.cnblogs.com/yufenghou/p/3448061.html
Copyright © 2020-2023  润新知