extjs ajax是一个实例化好的单例类 可以直接使用
Ext.Ajax.request({ url:"user.php", params:{ id:1 }, success:function(response, opts){ console.log(response.responseText); } });
参数
binary : Boolean | 是否为二进制数据 默认为false |
设置为true后 返回值受影响 |
cors : Boolean | 是否跨域 默认为false | 设置为true后 可以跨域 |
DisableCachingParam:String | 修改get请求禁止缓存名称 默认为_dc | 可以修改DisableCaching名称 |
listeners : Object | 事件监听 | 可以添加事件监听 |
withCredentials : Boolean | 设置withCredentials | 发送跨域请求凭据 |
ajax和前台交互
<div id="el"></div>
Ext.get('el').load({ url: 'myPage.php', scripts: true, params: { id: 1 } });
$arr = array( "id" => 2, "name" => "sadsads", "email" => "sadasdsadsas" ); $data = json_encode($arr); echo $data;
ajax回调函数
Ext.get('el').load({ url: 'user.php', scripts: true, params: { id: 1 }, callback:function(obj,status,response,options){ }, failure:function(obj,response,options){ }, success:function(obj,response,options){ } });
ajax request
form属性 可以自动获取一个form的值
js
Ext.get("b").on("click",function(){ Ext.Ajax.request({ url: 'user.php', method: 'post', params: { id:1 }, form: 'myform', callback:function(obj,status,response,options){ }, failure:function(obj,response,options){ }, success:function(obj,response,options){ } }); })
html
<form id="myform"> <input name="username"> <input name="password"> <input id="b" type="button" value="提交"> </form>
php
$arr = array( "id" => $_POST["id"], "name" => $_POST["username"], "email" => $_POST["password"] ); $data = json_encode($arr); echo $data;
jsonData属性 可以以json方式传递数据
js
var data = {id:2,username:"sdsds",password:"ssdss"}; Ext.get("b").on("click",function(){ Ext.Ajax.request({ url: 'user.php', method: 'post', jsonData:data, callback:function(obj,status,response,options){ }, failure:function(obj,response,options){ }, success:function(obj,response,options){ } }); })
html
<button id="b">按钮</button>
php
$arr = file_get_contents("php://input"); $arr = json_decode($arr,true); echo $arr['id'];