extjs 远程数据源
1本地数据源组合框
- Ext.onReady(function(){
- //创建数据模型
- Ext.regModel('PostInfo', {
- fields: [{name: 'province'}, {name: 'post'}]
- });
- //定义组合框中显示的数据源
- var postStore = Ext.create('Ext.data.Store', {
- model: 'PostInfo',
- data: [
- {province:'北京', post: '100000'},
- {province:'通县', post: '101100'},
- {province:'昌平', post: '102200'},
- {province:'大兴', post: '102600'},
- {province:'密云', post: '101500'},
- {province:'延庆', post: '102100'},
- {province:'顺义', post: '101300'},
- {province:'怀柔', post: '101400'}
- ]
- });
- //创建表单
- Ext.create('Ext.form.Panel', {
- title: 'Ext.form.field.ComboBox本地数据源示例',
- renderTo:Ext.getBody(),
- bodyPadding: 5,
- frame: true,
- height: 100,
- width: 270,
- defaults: {//统一设置表单字段默认属性
- labelSeparator: ':', //分隔符
- labelWidth: 70, //标签宽度
- width: 200, //字段宽度
- labelAlign: 'left'//标签对齐方式
- },
- items: [{
- xtype: 'combo',
- listConfig: {
- emptyText: '未找到匹配值', //当值不在列表时的提示信息
- maxHeight: 60 //设置下拉列表的最大高度为60像素
- },
- name: 'post',
- fieldLabel: '邮政编码',
- triggerAction: 'all',//单击除法按钮显示全部数据
- store: postStore, //设置数据源
- displayField: 'province',//定义要显示的字段
- valueField: 'post', //定义值字段
- queryMode: 'local', //本地模式
- forceSelection: true, //要求输入值必须在列表中存在
- typeAhead: true, //允许自动选择匹配的剩余部分文本
- value: '102600' //默认选择大兴
- }]
- });
- });
2.远程数据源的组合框
- Ext.onReady(function(){
- //创建数据模型
- Ext.regModel('BookInfo', {
- fields: [{name: 'bookName'}]
- });
- //定义组合框中显示的数据源
- var bookStore = Ext.create('Ext.data.Store', {
- model: 'BookInfo',
- proxy: {
- type: 'ajax', //Ext.data.AjaxProxy
- url: 'bookSearchServer.jsp',
- reader: new Ext.data.ArrayReader({model: 'BookInfo'})
- }
- });
- //创建表单
- Ext.create('Ext.form.Panel', {
- title: 'Ext.form.field.ComboBox远程数据源示例',
- renderTo:Ext.getBody(),
- bodyPadding: 5,
- frame: true,
- height: 100,
- width: 270,
- defaults: {//统一设置表单字段默认属性
- labelSeparator: ':', //分隔符
- labelWidth: 70, //标签宽度
- width: 200, //字段宽度
- labelAlign: 'left'//标签对齐方式
- },
- items: [{
- xtype: 'combo',
- fieldLabel: '书籍列表',
- listConfig: {
- loadingText: '正在加载书籍信息', //加载数据时显示的提示信息
- emptyText: '未找到匹配值', //当值不在列表时的提示信息
- maxHeight: 60 //设置下拉列表的最大高度为60像素
- },
- allQuery: 'allbook', //查询全部信息的查询字符串
- minChars: 3, //下拉列表框自动选择当前用户需要输入的最小字符数量
- queryDelay: 300, //查询延迟时间
- queryParam: 'searchbook',//查询的名字
- triggerAction: 'all', //单击触发按钮显示全部数据
- store: bookStore, //设置数据源
- displayField: 'bookName', //定义要显示的字段
- valueField: 'bookName', //定义字段值
- queryMode: 'remote'//远程模式
- }]
- });
- });
bookSearchServer.jsp
- <%@ page language="java" import="java.util.*" contentType="text/html; charset=utf-8" pageEncoding="UTF-8"%>
- <%
- String path = request.getContextPath();
- String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
- %>
- <%
- String bookName = request.getParameter("searchbook");
- String jav = "['java编程思想'],['java入门'],['javascript程序设计']";
- String cpp = "['c++编程思想'],['c++入门'],['c++程序设计']";
- String php = "['php编程思想'],['php入门'],['php程序设计']";
- String books = "";
- if(bookName.equals("allbook")){
- books = "[" + jav + "," + cpp + "," + php + "]";
- response.getWriter().write(books);
- return;
- }else{
- bookName = bookName.substring(0, 3); //取查询字符串的前3个字符串
- if(bookName.equals("jav")){
- books = "[" + jav + "]";
- }else if(bookName.equals("c++")){
- books = "[" + cpp + "]";
- }else if(bookName.equals("php")){
- books = "[" + php + "]";
- }else{
- books = "[[没有数据'']]";
- }
- response.getWriter().write(books);
- }
- %>
extjs 远程数据源的更多相关文章
- 【easyui-combobox】下拉菜单自动补全功能,Ajax获取远程数据源
这个是针对easyUI的下拉菜单使用的,Ajax获取远程数据源 HTML 页面 <input id="uname" name="uname" class= ...
- ExtJs之Ext.comboBox的远程数据源读取程序
既然可以测试本地AJAX,那就把书前面的代码作一次学习吧. <!DOCTYPE html> <html> <head> <title>ExtJs< ...
- ExtJS远程数据-本地分页
背景 一般情况下,分页展示是前端只负责展示,后台通过SQL语句实现分页查询.当总数据量在千条以下,适合一次性查询出符合条件的所有数据,让前端页面负责分页也是一种选择. 实例 现通过ExtJS 4扩展类 ...
- 远程数据源Combobox
Ext.define('bookInfo', { extend: 'Ext.data.Model',//新类继承自model fields: [{ name: 'b ...
- Extjs 下拉框
刚刚熟练了easyui控件的使用,又開始了如今的这个项目. 这个项目是个半成品.前端使用的是Extjs控件,jsp中没有代码.就引用了非常多的js...于是乎有种不知所措了呀. . . 说实话特别的不 ...
- EXTJS 常用控件的使用
重要按钮配置项 handler: renderTo: 取得控件及其值 var memo = form.findById('memo');//取得输入控件 alert(memo.getValue()); ...
- ExtJs 第二章,Ext.form.Basic表单操作
1.认识Ext.form.Panel表单面板 Ext.form.field.CheckBox 复选框 checkboxfield Ext.form.CheckBoxGroup 复选框组 ...
- SQL SERVER 2008远程数据库移植到本地的方法
https://blog.csdn.net/wuzhanwen/article/details/77449229 Winform程序或网站后台的SQL SERVER 2008放置在远程服务器上,用Mi ...
- sqlserver利用链接服务器查询或同步本地数据库和远程数据库
这个实际上是SQLserver的分布式查询:如果一个项目需要二至多台服务器,而我们又必须从几台服务器中将数据取出来,这就必须用分布式查询!在这里有两个概念:本地数据源.远程数据源!本地数据源指的是单个 ...
随机推荐
- [Effective JavaScript 笔记]第19条:熟练掌握高阶函数
高阶函数介绍 高阶函数曾经是函数式编程的一个概念,感觉是很高深的术语.但开发简洁优雅的函数可以使代码更加简单明了.过去几年中脚本语言采用了这些个技术,揭开了函数式编程的最佳惯用法的神秘面纱.高阶函数就 ...
- ICA
参考:http://www.cnblogs.com/jerrylead/archive/2011/04/19/2021071.html 对高斯分布的样本点效果不好.数学真是博大精深啊
- 减小Delphi2010程序的尺寸(关闭RTTI反射机制)
自从Delphi2010增强了RTTI反射机制后,编译出来的程序变得更大了,这是因为默认情况下 Delphi2010 给所有类都加上了RTTI信息(呵呵,不管你用不用它,好像实用价值确实不高,至少目前 ...
- 右移>> 和 左移<<
一个int占四个字节,也就是32位,这样的话1不论左移还是右移32位仍旧移到原来的位置,就仍旧是1了. 右移是除,左移是乘.1除1除32次和1乘1乘32次当然都还是1了. 移位操作的简单计算方法 &g ...
- 使用virtualenv搭建独立的Python环境
virtualenv可以搭建虚拟且独立的python环境,可以使每个项目环境与其他项目独立开来,保持环境的干净,解决包冲突问题. 一.安装virtualenv virtualenv实际上是一个pyth ...
- 安装mac os x时about a second remaining解决方法
转自: http://www.hongkiat.com/blog/clean-install-mavericks/ During the installation process, you may e ...
- 基础知识《二》java的基本类型
一.java基本数据类型 Java基本类型共有八种,基本类型可以分为三类,字符类型char,布尔类型boolean以及数值类型byte.short.int.long.float.double.数值类型 ...
- 70 数组的Kmin算法和二叉搜索树的Kmin算法对比
[本文链接] http://www.cnblogs.com/hellogiser/p/kmin-of-array-vs-kmin-of-bst.html [分析] 数组的Kmin算法和二叉搜索树的Km ...
- 【转】SQL删除重复记录,只保留其中一条
SQL:删除重复数据,只保留一条用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢 1.查找表中多余的重复记录,重复记录是根据单个字段(peop ...
- 利用 FFmpeg 和 ImageMagick, AVI 转 GIF(不失真)
利用[TMPGEnc 4.0 XPress] 或 [TMPGEnc Video Mastering Works 5] 生成 AVI 这个视频编辑软件,可对每个帧进行操作 1.生成每个帧的 PNG ff ...