extjs用ajax传送数据的方法有post(用普通的表单或用json格式),get(用params).
在回传的时候用json(推荐方法) ,需要注意的是服务器必须要返回json格式,并且必须要设置success的值,当然你不这样也能,但是这种方式应该是官方提倡的方式.
这里主要总结json数据服务器回传的方法.
在api总指出回传的格式{success;true,data:{clientName: "Fred. Olsen Lines", portOfLoading:"FXT",portOfDischarge: "OSL" } }}}
需要注意的是这里的success和data是关键字,(姑且这么叫吧)在data中是数据在客户端通过
Ext.decode(response.responseText).clientName获得.第一个回传数据.这里证明在用
success: function(response){}函数的时候,参数response是一个json字符串,通过Ext.decode解析了data的数据集.
//成功时回叫,第一个参数为XMLHttpRequest对象,第二个参数传入指定的options
所有,这里前后台的代码应该这样统一:
后台(asp):
response.write "{success:false,data:{msg:'密码或用户名不能为空!'}}"
response.write "{success:true,data:{msg:'登陆成功!'}}"
前台:
success: function(response,options){Ext.MessageBox.alert(' 提示',Ext.decode(response.responseText).msg);},
failure: function(response,options){Ext.MessageBox.alert('提示','Ext.decode(response.responseText).msg);},
还可以:
Ext.util.JSON.decode(response.responseText); 这个也是对json编码的解析.
另外在网上还看到这样代码:
服务器:
{ success:false, errors:{errstr: '用户名或者密码错误'} }
客户端:
http://www.w3.org/TR/XMLHttpRequest/查询详细的信息。
success Function 指定当Ajax请求执行成功后执行的回调函数,传递给回调函数两个参数,第一个参数response表示执行Ajax请求的XMLHttpRequet对象,第二个参数表示执行request方法时的options对象。
failure Function 指定当请求出现错误时执行的回调函数,传递给回调函数两个参数,第一个参数response表示执行Ajax请求的XMLHttpRequet对象,第二个参数表示执行request方法时的options对象。
scope Object 指定回调函数的作用域,默认为浏览器window。
form Object/String 指定要提交的表单id或表单数据对象。
isUpload Boolean 指定要提交的表单是否是文件上传表单,默认情况下会自动检查。
headers Object 指定请求的Header信息。
xmlData Object 指定用于发送给服务器的xml文档,如果指定了该属性则其它地方设置的参数将无效。
jsonData Object/String 指定需要发送给服务器端的JSON数据。如果指定了该属性则其它的地方设置的要发送的参数值将无效。
disableCaching Boolean 是否禁止cache。
文章出处:http://blog.163.com/lvkeqiang_2001/blog/static/460325420092145650703/