文章列表
spket
简介:是一个支持Ext库的非常棒的eclipse javascript插件。一个RIA的开发工具。支持JavaScript, XUL/XBL,
Laszlo, SVG and Yahoo! Widget 等新产品,他可以以一个独立的桌面应用程序运行或者以Eclipse的一个插件运行。
在Eclipse下面 ...
新安装的Office 2010体积实在是太大了,我们一般会在安装时精简掉一些自认为没用的组件,但是如果选择不正确的话,很容易出现错误提示,最常见的莫过于这个了
在打开或关闭word文档的时候提示
"您试图运行 ...
PremiumSoft Navicat for MySQL Enterprise Edition v8.2.17
Name: input any name you like
Organization: input any text you like
Serial: NAVJ-W56S-3YUU-MVHV
Ajax是不能在本地文件系统中使用的,必须把数据放到服务器上。无论是IIS、Apache、 Tomcat,还是你熟悉的其他服务器,
只要支持HTTP协议,就可以使用EXT中的Ajax。
至于本地为何不能用Ajax,主要是因为Ajax要判断HTTP响应返回的状态,只有status=200时才认为这次请求是成功的。
所以,localXHR做的就是强行修改响应状态,让Ajax可以继续下去。
下面我们来分析一下localXHR的源代码。
> 加入了一个forceActiveX属性,默认是false,它用来控制是否强制使用activex,activex是在IE下专用的。
> 修 ...
在EXT中直接使用DWR
因为DWR在前台的表现形式和普通的JavaScript完全一样,所以我们不需要特地去做些什么,
直接使用EXT调用DWR生成的JavaScript函数即可。
以Grid为例,比如现在我们要显示一个通讯录的信息,后台记录的数据有:id、name、sex、email、tel、addTime和descn。
编写对应的POJO,代码如下所示:
public class Info {
long id;
String name;
int sex;
String email;
String tel;
...
关于JavaScript中this的使用,这是一个由来已久的问题了。我们这里就不介绍它的发展历史了,只结合具体的例子,告诉大家可能会遇到什么问题,在遇到这些问题时EXT是如何解决的。在使用EXT时,最常碰到的就是使用Ajax回调函数时出现的问题,如下面的代码所示:
<input type="text" name="text" id="text">
<input type="button" name="button" id="button" value ...
Ext.Ajax的基本用法如下所示:
var proxy = new var ds = Ext.Ajax.request({
url: '07-01.txt',
success: function(response) {
Ext.Msg.alert('成功', response.responseText);
},
failure: function(response) { ...
实际开发时,并不需要每次都对proxy、reader、store这三个对象进行配置,EXT为我们提供了几种可选择的整合方案。
1. SimpleStore = Store + MemoryProxy + ArrayReader
var proxy = new var ds = Ext.data.SimpleStore({
data: [
['id1','name1','descn1'],
['id2','name2','descn2']
],
fields: ['id','n ...
常用Reader之ArrayReader
从proxy中读取的数据需要进行解析,这些数据转换成Record数组后才能提供给Ext.data. Store使用。
ArrayReader的作用是从二维数组里依次读取数据,然后生成对应的Record。
默认情况下是按列顺序读取数组中的数据,不过你也可以考虑用mapping指定record与原始数组对应的列号。
ArrayReader的用法很简单,但缺点是不支持分页。
使用二维数组的方式如下面的代码所示:
var data = [
['id1','name1','descn1'],
['id2','name2', ...
常用proxy之MemoryProxy
MemoryProxy只能从JavaScript对象获得数据,可以直接把数组,或JSON和XML格式的数据交给它处理,如下面的代码所示。
var proxy = new Ext.data.MemoryProxy([
['id1','name1','descn1'],
['id2','name2','descn2']
]);
var proxy = new Ext.data.MemoryProxy([ ['id1','name1','descn1'], ['id2','name ...
Ext.data.Store是EXT中用来进行数据交换和数据交互的标准中间件,无论是Grid还是ComboBox,都是通过它实现数据读取、
类型转换、排序分页和搜索等操作的。
Ext.data.Store中有一个Ext.data.Record数组,所有数据都存放在这些Ext.data. Record实例中,为后面的读取和修改操作做准备。
Ext.data.Store的基本用法
在使用之前,首先要创建一个Ext.data.Store的实例,如下面的代码所示。
var data = [
['boy', 0],
['girl', 1]
]; ...
Ext.data.Record
Ext.data.Record就是一个设定了内部数据类型的对象, 它是Ext.data.Store的最基本组成部分。如果把Ext.data.Store看作是一张二维表,那么它的每一行就对应一个 Ext.data.Record实例。
Ext.data.Record的主要功能是保存数据,并且在内部数 据发生改变时记录修改的状态,它还可以保留修改之前的原始值。
我们使用Ext.data.Record时通常都是由 create()函数开始,首先用create()函数创建一个自定义的Record类型,如下面的代码所示:
PersonRecord就是我们定义 ...
Ext.data.Connection
Ext.data.Connection是对Ext.lib.Ajax的封装,它提供了配置使用Ajax的通用方 式,它在内部通过Ext.lib.Ajax实现与后台的异步调用。
与底层的Ext.lib.Ajax相比,Ext.data. Connection提供了更简洁的配置方式,使用起来更方便。
Ext.data.Connection主要用于在Ext.data.HttpProxy和 Ext.data.ScriptTagProxy中执行与后台交互的任务,它会从指定的URL获得数据,并把后台返回的数据交给HttpProxy或 ScriptTagProxy处理, ...
Ext.data在命名空间中定义了一系列store、reader和proxy。 Grid和ComboxBox都是以Ext.data为媒介获取数据的,它包含异步加载、类型转换、分页等功能。 Ext.data默认支持Array、JSON、XML等数据格式,可以通过Memory、HTTP、 ScriptTag等方式获得这些格式的数据。 如果要实现新的协议和新的数据结构,只需要扩展reader和proxy即可。 DWRProxy就实现了自身的proxy和reader,让EXT可以直接从DWR获得数据