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 笔记]第15条:当心局部块函数声明笨拙的作用域
嵌套函数声明.没有标准的方法在局部块里声明函数,但可以在另一个函数的顶部嵌套函数声明. function f(){return "global"} function test(x) ...
- UITableView 学习笔记
http://www.cnblogs.com/smileEvday/archive/2012/06/28/tableView.html UITableView学习笔记 作者:一片枫叶 看TableVi ...
- C语言课程2——我们交流的工具:Coding.net
各位同学,大家好,在我们本学期既有老师的课堂授课,同样也有我与你们在线的辅导:那么问题来了,我与你们之间是通过何种方式进行交流,比如你的代码我怎么修改,怎样看到修改了哪些地方,我对你们的代码怎样批注, ...
- 一个csrf实例漏洞挖掘带你了解什么是csrf
[-]CSRF是个什么鬼? |___简单的理解: |----攻击者盗用了你的身份,以你的名义进行某些非法操作.CSRF能够使用你的账户发送邮件,获取你的敏感信息,甚至盗走你的财产. |___CSRF攻 ...
- 在ubuntu 15.04下安装VMware Tools
提出问题:在Ubuntu 15. 04版本上,不能实现剪贴板的共享 解决方法:发现没有装VMware Tools 安装VMware Tools步骤 1. 点击菜单栏,虚拟机 → 安装VMware工具 ...
- 最近win7更新后出现第二次打开IDE(delphi2007)的时候提示无法打开"EditorLineEnds.ttr"这个文件
kb2982791 - 2014年8月12日更新 - http://support.microsoft.com/kb/2982791kb2970228 - 2014年8月12日更新 - http:// ...
- /lib /usr/lib /usr/local/lib区别
昨天问我/usr/lib 和/usr/local/lib 我仅记得一个是系统的,一个是用户的,于是今天查了查,有两篇文章介绍的不错,usr 很多人都认为是user缩写,其实不然,是unix syste ...
- net发送邮件
对于.NET而言,从2.0开始,发邮件已经是一件非常easy 的事了.下面我给出一个用C#群发邮件的实例,做了比较详细的注解,希望对有需要的朋友有所help.看了这篇BLOG,如果你还不会用.NET发 ...
- iOS 中使用Base64编码方式编码图片数据
最近一个项目要求对图片数据简单加密下,就是那种不能直接看到图片内容就行.于是我使用了base64编码对图片数据进行编码,把图片2进制数据变成了base64的字符串,再把这个字符串保存到server的数 ...
- Extjs读取更改或者发送ajax返回请求的结果简单封装
Extjs的submit()方法提交的数据:如下: this.formPanel.getForm().submit({ url:this.saveUrl, ...