- 浏览: 90838 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
hzxlb910:
背景看的头晕
extJs 2.1学习笔记(Ext.data.JsonReader篇一) -
whyang:
先鄙视一下这个论坛,要做测试才能回复。
我是想问下楼主,
第 ...
Struts2的异常处理机制:
ExtJs之所以能异步请求数据,全依赖于Ext.data.Connection。而Ext.Ajax只不过是Ext.data.Connection的一个实例罢了。当然Ext.Ajax比Ext.data.Connection多了一个函数:serializeForm(form),这个函数的作用是把一个表单里面的表单元素序列化。结果形式为:name1=value1&name2=value2……不过,如果是我的话,一般不会用这个东西,因为平常都是传json数据的,当然,如果不是请求WebService,而是请求aspx页面,那么这个东西还是有点用的。
先把它的官方文档翻译一下吧。
全 称:Ext.data.Connection
命名空间:Ext.data
定义 于:Connection.js
类 名:Connection
子 类:Ajax
父 类:Observable
这个类封装了到页面所在主机的连接,允许通过一个配置好的URL来请求数据,也可以临时在请求时传递一个URL。
通过这个类获得的请求都是异步的,并且马上返回,调用request后,它并不马上返回数据,要处理数据,要在调用request时传入的 options对象中,配置callback或者是success、failure。这三个是回调函数。其区别将在下文具体交待。当然,你也可以使用 Connection的事件处理来做一些事情。
注意:如果你是要上传文件,你的回调、事件处理函数将不会获得通常意义上的response对象。上传通过IFrame来捕获,所以就没有 XMLHttpRequest了。这时,response还是被创建,不过,它的responseText等于IFrame的 document.innerHTML,responseXML等于IFrame的document中的xml数据。当然,这个前提是它们存在的时候。
这意味着必面回一个合法的XML或HTML document。如果返回的是JSON数据,那么建议你把数据放到<textarea>标记中,返回时通过正则表达式从 responseText中取出来了。如果返回的是XML数据,建议放到CDATA里面,通过标准DOM方法从responseXMl中取得数据。
Options:
autoAbort : Boolean
取消当前请求,不管当前请求是不是存在。默认值为false。
defaultHeaders : Object
默认头部,每个HTTP请求分成两部:头部、数据。数据就是post的部分,头部包含了请求的一些基本属性,此对象定义了用当前connection对象发起的请求的默认头部,默认值为undefined。
disableCaching : Boolean
是否为GET请求加入一个唯一标志的参数缓存。
extraParams : Object
一般情况下,加在encodeURL(params)后面。默认值为:undefined。
method : String
就是http请求的method属性。默认情况下是未定义的(undefined);如果没有设置,但是调用request时设了params,那么将使用POST方式,否则使用GET。
timeout : Number
请求超时,默认值为:30000。单位是millisecond(毫秒?)。
url : String
用此connection对象发起的请求的默认URL。默认值为:undefined。
无公共属性
公共函数(只讲connection自身的,不包括从Observable中继承来的):
Connection( Object config )
构造函数,没有悬念。
abort( [Number transactionId] ) : void
取消指定id的请求,如果没有指定则取消当前请求。
isLoading( [Number transactionId] ) : Boolean
判断指定id的请求是不是正在请求中(?)。
request( [Object options] ) : Number
发送一个HTTP请求到远程主机上。
重点:Ajax服务请求都是异步的,并且这个请求将在response(响应)返回之前返回,也就是说,你绝对无法通过此函数来直接返回数据,你得通过定义回调函数来处理返回的数据。
参数:
options : Object
一个可能包含下面属性的对象:
url : String (Optional)
请求对应的URL,默认值是connection的options配置的那个url。
params : Object/String/Function (Optional)
用于提供url后面的请求参数(俗称查询字符串),可以是json对象,可以是直接的字符串,可以是一个函数。
method : String (Optional)
此http请求的method。默认值为connection的options中配置的method。如果没有设置它,那么就要看params是否设了,如果设了就以POST方式请求,如果没有就以GET方式请求,注意:method名是大小敏感的,必须全面大写。
callback : Function (Optional)
无论请求成功还是失败它都被执行,其参数如下:
options : Object
不用说了。
success : Boolean
是否请求成功了。
response : Object
一个包含响应数据的XMLHttpRequest对象。
success : Function (Optional)
请求成功时执行的回调。它的参数如下:
response : Object
一个包含响应数据的XMLHttpRequest对象。
options : Object
不用说了。
failure : Function (Optional)
请求失败时执行的回调。它的参数如下:
response : Object
一个包含响应数据的XMLHttpRequest对象。
options : Object
不用说了。
scope : Object (Optional)
回调函数执行时所使用的scope。
form : Object/String (Optional)
将用于构造查询字符串的form的引用或id。
isUpload : Boolean (Optional)
当前请求是否是在上传文件(通常是自动检测的)。
文件上传不是通过通常的Ajax技术实现,它们通过在form提交时动态插入一个iframe,返回时又移除这个iframe来实现,一通的英文,就是说响应数据是直接交给浏览器的,这时,就有点能理解为什么要用iframe了。因为它返回的东西会被浏览器直接插入到document对象下面,直给放当前页,那么页面当前内容将消失。所以,只有放一个iframe中了。且这个iframe得隐藏起来。
如果返回结果是json,那么头部要设一下content-type:text/html。
headers : Object (Optional)
请求的头部。
xmlData : Object (Optional)
如果有它,那么params就不会起作用。
jsonData : Object/String (Optional)
如果有它,那么params就不会起作用。
disableCaching : Boolean (Optional)
为真时为Get请求创建一个param缓存。
这个options对象也可以包含其他你需要用于回调的属性,大伙都晓得,这个options最后回被传给回调函数的,所以,也可以加入自己想要的东西。
返回值:
一个请求的id。它用于取消请求。。
事件:
beforerequest : ( Connection conn, Object options )
在请求发生之前触发。
requestcomplete : ( Connection conn, Object response, Object options )
请求结束时触发。
requestexception : ( Connection conn, Object response, Object options )
当http请求处于错误状态时触发。
先把它的官方文档翻译一下吧。
全 称:Ext.data.Connection
命名空间:Ext.data
定义 于:Connection.js
类 名:Connection
子 类:Ajax
父 类:Observable
这个类封装了到页面所在主机的连接,允许通过一个配置好的URL来请求数据,也可以临时在请求时传递一个URL。
通过这个类获得的请求都是异步的,并且马上返回,调用request后,它并不马上返回数据,要处理数据,要在调用request时传入的 options对象中,配置callback或者是success、failure。这三个是回调函数。其区别将在下文具体交待。当然,你也可以使用 Connection的事件处理来做一些事情。
注意:如果你是要上传文件,你的回调、事件处理函数将不会获得通常意义上的response对象。上传通过IFrame来捕获,所以就没有 XMLHttpRequest了。这时,response还是被创建,不过,它的responseText等于IFrame的 document.innerHTML,responseXML等于IFrame的document中的xml数据。当然,这个前提是它们存在的时候。
这意味着必面回一个合法的XML或HTML document。如果返回的是JSON数据,那么建议你把数据放到<textarea>标记中,返回时通过正则表达式从 responseText中取出来了。如果返回的是XML数据,建议放到CDATA里面,通过标准DOM方法从responseXMl中取得数据。
Options:
autoAbort : Boolean
取消当前请求,不管当前请求是不是存在。默认值为false。
defaultHeaders : Object
默认头部,每个HTTP请求分成两部:头部、数据。数据就是post的部分,头部包含了请求的一些基本属性,此对象定义了用当前connection对象发起的请求的默认头部,默认值为undefined。
disableCaching : Boolean
是否为GET请求加入一个唯一标志的参数缓存。
extraParams : Object
一般情况下,加在encodeURL(params)后面。默认值为:undefined。
method : String
就是http请求的method属性。默认情况下是未定义的(undefined);如果没有设置,但是调用request时设了params,那么将使用POST方式,否则使用GET。
timeout : Number
请求超时,默认值为:30000。单位是millisecond(毫秒?)。
url : String
用此connection对象发起的请求的默认URL。默认值为:undefined。
无公共属性
公共函数(只讲connection自身的,不包括从Observable中继承来的):
Connection( Object config )
构造函数,没有悬念。
abort( [Number transactionId] ) : void
取消指定id的请求,如果没有指定则取消当前请求。
isLoading( [Number transactionId] ) : Boolean
判断指定id的请求是不是正在请求中(?)。
request( [Object options] ) : Number
发送一个HTTP请求到远程主机上。
重点:Ajax服务请求都是异步的,并且这个请求将在response(响应)返回之前返回,也就是说,你绝对无法通过此函数来直接返回数据,你得通过定义回调函数来处理返回的数据。
参数:
options : Object
一个可能包含下面属性的对象:
url : String (Optional)
请求对应的URL,默认值是connection的options配置的那个url。
params : Object/String/Function (Optional)
用于提供url后面的请求参数(俗称查询字符串),可以是json对象,可以是直接的字符串,可以是一个函数。
method : String (Optional)
此http请求的method。默认值为connection的options中配置的method。如果没有设置它,那么就要看params是否设了,如果设了就以POST方式请求,如果没有就以GET方式请求,注意:method名是大小敏感的,必须全面大写。
callback : Function (Optional)
无论请求成功还是失败它都被执行,其参数如下:
options : Object
不用说了。
success : Boolean
是否请求成功了。
response : Object
一个包含响应数据的XMLHttpRequest对象。
success : Function (Optional)
请求成功时执行的回调。它的参数如下:
response : Object
一个包含响应数据的XMLHttpRequest对象。
options : Object
不用说了。
failure : Function (Optional)
请求失败时执行的回调。它的参数如下:
response : Object
一个包含响应数据的XMLHttpRequest对象。
options : Object
不用说了。
scope : Object (Optional)
回调函数执行时所使用的scope。
form : Object/String (Optional)
将用于构造查询字符串的form的引用或id。
isUpload : Boolean (Optional)
当前请求是否是在上传文件(通常是自动检测的)。
文件上传不是通过通常的Ajax技术实现,它们通过在form提交时动态插入一个iframe,返回时又移除这个iframe来实现,一通的英文,就是说响应数据是直接交给浏览器的,这时,就有点能理解为什么要用iframe了。因为它返回的东西会被浏览器直接插入到document对象下面,直给放当前页,那么页面当前内容将消失。所以,只有放一个iframe中了。且这个iframe得隐藏起来。
如果返回结果是json,那么头部要设一下content-type:text/html。
headers : Object (Optional)
请求的头部。
xmlData : Object (Optional)
如果有它,那么params就不会起作用。
jsonData : Object/String (Optional)
如果有它,那么params就不会起作用。
disableCaching : Boolean (Optional)
为真时为Get请求创建一个param缓存。
这个options对象也可以包含其他你需要用于回调的属性,大伙都晓得,这个options最后回被传给回调函数的,所以,也可以加入自己想要的东西。
返回值:
一个请求的id。它用于取消请求。。
事件:
beforerequest : ( Connection conn, Object options )
在请求发生之前触发。
requestcomplete : ( Connection conn, Object response, Object options )
请求结束时触发。
requestexception : ( Connection conn, Object response, Object options )
当http请求处于错误状态时触发。
发表评论
-
Extjs3.0的变动记录(转载)
2009-09-24 11:23 2962Release Date: Jul 6, 2009 Curr ... -
Ext中TreePanel控件和TabPanel控件搭配测试
2009-08-25 13:51 1610在实际的项目中,左边树形菜单,提供各种功能点击,右边一个面板, ... -
extJs 2.1学习笔记(Ext.Updater篇二)
2009-08-05 22:02 1594全 称:Ext.Updater 命名 ... -
extJs 2.1学习笔记(Ext.Updater篇一)
2009-08-05 22:00 1226上几篇中老老实实地把E ... -
extJs 2.1 学习笔记(Ext.data.HttpProxy篇)
2009-08-05 21:59 2475关于Ext.data中各个类的 ... -
extJs 2.1学习笔记(Ext.data.JsonReader篇一)
2009-08-05 21:58 2123有个事要说一下:DataProxy的子类呢,都有一个load来 ... -
extJs 2.1学习笔记(Ext.data.JsonReader篇二)
2009-08-05 21:57 1295有了上一篇中所讲内容,一般情况下就可以应付了,不过,Jso ... -
extJs 2.1学习笔记(Ext.TabPanel篇)
2009-08-05 21:56 1434Ext.TabPanel这个东西是最常用的组件之一,它继承 ... -
extJs 2.1学习笔记(Function扩展篇)
2009-08-05 21:55 974ExtJs对JavaScript的内建对象进行了扩展,对什么O ... -
extJs 2.1学习笔记(Ext.data.Store篇)
2009-08-05 21:54 1534Ext.data.Store,这个东西是JavaScript ... -
extJs 2.1学习笔记(Ext.data.Connection篇二)
2009-08-05 21:54 1720上一篇主要是扎扎实实地翻译了一下Ext.data.Connec ... -
extJs 2.0学习笔记(Ext.Panel终结篇)
2009-08-05 21:49 1157怪不得我对Ext.Panel穷追猛打,前面已经写过四篇针对它的 ... -
extJs 2.0学习笔记(事件注册总结篇)
2009-08-05 21:48 1158本来,我也没把这档子 ... -
extJs 2.0学习笔记(Ext.Panel篇四)
2009-08-05 21:46 1714我刚才禁不住诱惑去看 ... -
extJs 2.0学习笔记(Ext.Panel篇三)
2009-08-05 21:45 1923上一篇中把panel的config部分的文档翻译了一下,事实 ... -
extJs 2.0学习笔记(Ext.Panel篇二)
2009-08-05 21:44 1386activeItem : String/Number 用 ... -
extJs 2.0学习笔记(Ext.Panel篇一)
2009-08-05 21:42 1226原文链接: http://hi.baidu ... -
EXT 中 类的继承
2009-07-31 09:36 1008深入剖析ExtJS 2.2实现及 ... -
Ext架构分析:render方法
2009-07-16 08:51 5084Ext架构分析(3)--Widget之 ... -
Ext 2 概述
2009-07-16 08:48 823原文链接 http://hi.baidu.com/xcl1 ...
相关推荐
17. extJs 2.0学习笔记(Ext.data序论篇) 39 18. extJs 2.0学习笔记(Ext.Panel终结篇) 40 19. extJs 2.0学习笔记(事件注册总结篇) 45 20. extJs 2.0学习笔记(Ext.Panel篇一) 48 21. extJs 2.0学习笔记(Ext.Panel篇二)...
14. **extJs 2.0 学习笔记(Ext.data序论篇)** 这部分介绍了Ext.data模块的基础,包括DataModel、Reader和Writer,是理解数据绑定和数据管理的关键。 15. **extJs 2.0 学习笔记(Ext.Panel终结篇)** Panel是...
`Ext.data.Store`是ExtJS框架中用于管理数据的核心组件之一。它主要负责数据的存储、加载、更新等操作,并且提供了多种方法来方便地处理这些数据。本文将详细介绍`Ext.data.Store`的基本用法。 #### 二、创建Ext....
在EXTJS框架中,`Ext.ux.form.LovCombo`是一种自定义组件,它扩展了基本的`Ext.form.field.ComboBox`,提供了更丰富的功能,尤其是针对多选和联动选择的需求。这个组件通常用于创建具有“lov”(即“Look Up Value”...
在EXTJS这个强大的JavaScript框架中,`Ext.Panel`和`TreePanel`是两个非常重要的组件,它们被广泛用于构建复杂的用户界面。这篇文章将探讨如何在这些组件中动态加载本地页面数据,以提升用户体验并实现灵活的数据...
关于这个原因有很多种,我只说下我遇到的 我这样 写Store来复用的 代码如下: DocStore = Ext.extend(Ext.data.Store,{ initComponent:function(){ this.proxy = new Ext.data.HttpProxy({url:this.url}); this....
Extjs4.0学习笔记大全.pdf,供大家学习
在3.4.0版本中,`ext.jsb2` 文件是一个关键组成部分,它对于理解和开发基于ExtJS的应用程序至关重要。这个文件的缺失可能会对升级到4.0.0版本的开发者造成困扰,因为4.0.0版本不再包含这个文件,但幸运的是,它可以...
此组件包含一个`Ext.grid.Panel`,并演示了如何为表格中的每一列添加ToolTip。 #### 代码解析 1. **定义组件**: ```javascript Ext.define('WebApp.view.tip.ToolTip',{ extend:'Ext.container.Container', ....
ExtJS 2.1 库文件是Web应用程序开发的一个重要工具,主要用于构建富客户端界面。这个版本的ExtJS提供了一套完整的组件模型、布局管理、数据绑定和事件处理机制,帮助开发者快速创建交互性强、用户体验良好的网页应用...
在ExtJs框架中,JsonStore是一种非常重要的数据存储器,它专门用来处理和展示JSON格式的数据。本资料主要讲解如何使用JsonStore来加载并显示数据,以创建一个简单的个人信息表格。 首先,为了使用ExtJs框架,我们...
首先,ExtJs中的Ext.MessageBox是一个常用来与用户进行交互的弹窗组件。它可以用来显示警告框、确认框等。在进行Ajax请求之前,我们可以使用Ext.MessageBox确认框来询问用户是否要进行操作,并在用户确认后显示一个...
ExtJS4 学习笔记(一)---window 的创建 Extjs4,创建 Ext 组件有了新的方式,就是 Ext.create(....),而且可以使用动态加载 JS 的方式 来加快组件的渲染,我们再也不必一次加载已经达到 1MB 的 ext-all.js 了,本文...
EXTJS 2.1中文文档提供了对EXTJS这一JavaScript库的详细解读,是开发者学习和理解EXTJS的重要参考资料。EXTJS是一种用于构建富客户端Web应用的框架,它以组件化和可扩展性著称,提供了丰富的用户界面组件,如表格、...
EXTJS 2.1 是一个历史悠久但依然备受推崇的JavaScript框架,主要用于构建富客户端Web应用程序。这个开发包因其强大的功能和灵活性,使得开发者能够创建出与Windows操作系统界面类似的交互式用户体验。EXTJS的核心...
在ExtJS 4.x框架中,ComboboxTree是一种特殊的组件,它将传统的下拉框与树形结构结合在一起,提供了一种更为灵活的用户输入方式。这种组件在数据选择上非常实用,尤其当数据层级关系复杂时,可以方便地进行多选或...
EXTjs是一个广泛使用的JavaScript库,特别适用于构建富客户端应用程序。其强大的组件模型使得开发者能够创建各种复杂的用户界面。"UploadDialog"是EXTjs中的一个扩展(Extension),它为用户提供了一个集成的文件...
标题中的“Extjs2.1源码%2B教程.rar”指的是包含ExtJS 2.1版本的源代码以及相关教程的压缩文件,这对于开发者来说是一个宝贵的资源,尤其是对于那些想要深入理解ExtJS工作原理或者学习如何使用这个框架的人来说。...
在EXTJS库中,`Ext.Ajax.request`是用于发送Ajax请求的核心方法,它支持异步和同步操作。本文将详细解析如何利用`Ext.Ajax.request`实现同步请求,并探讨其背后的原理和注意事项。 首先,我们需要理解Ajax的本质,...