ExtJs4中Ext.Ajax的Ajax封装包测试笔记(1/3)

本篇主要介绍一下ExtJs常用的几个对JS语法的扩展支持,包括Ajax封装,函数事件操作封装,还有扩展的常用函数等。Ajax服务端交互式操作是提交到.NET MVC。后续服务端交互都采用这一方式实现。

一、ExtJs中的Ajax:Ext.Ajax.request
通过客户端向服务端发送Ajax请求,可以“直接”调用MVC的action方法,并传递参数,action返回值可以是普通字符串,也可以是json对象。请求可以添加自定义头信息。看下面例子:

1.异步请求,发送自定义请求头:
html页面如下:

[html]

 代码如下 复制代码
<h1>Ajax服务端请求</h1>
<div class="content" id="div1">
<div>一共发起了<span id="span1" style="color:Red">0</span>次请求。</div>
</div>

我们先通过一个按钮单击事件触发ajax请求,服务端返回string到客户端,异步请求时,为请求添加自定义头“userHeader”,并在服务端获取。如下是js代码:

 代码如下 复制代码

[Js]
Ext.onReady(function () {
    new Ext.Button({
        renderTo: "div1",
        text: "后台Ajax提交",
        handler: function () {
            Ext.Ajax.request({
                url: 'Ajax_Func1',
                headers: {
                    'userHeader': 'userMsg'
                },
                params: { a: 10, b: 20 },
                method: 'GET',
                success: function (response, options) {
                    Ext.MessageBox.alert('成功', '从服务端获取结果: ' + response.responseText);
                },
                failure: function (response, options) {
                    Ext.MessageBox.alert('失败', '请求超时或网络故障,错误编号:' + response.status);
                }
            });
        },
        id: "bt1"
    });

});

 

服务端MVC接受请求的action代码:

 代码如下 复制代码
[C#]
        public ContentResult Ajax_Func1(int a, int b)
        {
            string userHeaderMsg = Convert.ToString(Request.Headers["userHeader"]);
            return Content((a + b).ToString() + ",userHeader:" + userHeaderMsg);
        }

然后我们在火狐中调试:自定义请求头已被添加

结果

首页 1 2 3 末页

时间: 2024-10-26 01:17:07

ExtJs4中Ext.Ajax的Ajax封装包测试笔记(1/3)的相关文章

extjs4中Ext.toolbar.Paging分页工具栏控件

 代码如下 复制代码 [Js]     var store = Ext.create('Ext.data.Store', {         fields: ['IntData', 'StringData', 'TimeData'],         pageSize: 15,         proxy: {             type: 'ajax',             url: 'PagingToolbar1Json',             reader: {       

extjs4中Ext.menu.Menu 菜单功能实例代码

菜单的定义 下面我们来定义一个菜单,它包括一个下拉列表,还有颜色选择器,日期选择器等菜单项.  代码如下 复制代码 [Js]     //下定义一个下拉列表     var combo = Ext.create('Ext.form.ComboBox', {         store: new Ext.data.ArrayStore({             fields: ['id', 'name'],             data: [[1, "张三"], [2, "

extjs4中Ext.toolbar.Toolbar工具栏控件实例

.在工具栏上添加菜单.按钮.搜索功能 我们这里借用上一篇所讲到的listview控件作为数据展示,把listview放入一个面板控件中,然后把工具栏添加到面板顶部,并且在工具栏中实现数据集的服务端搜索的功能. 首先我们定义一个数据模型和Store:  代码如下 复制代码 [Js]     Ext.define('Datas', {         extend: 'Ext.data.Model',         fields: [         { name: 'IntData', type

extjs4中Ext.ux.statusbar.StatusBar 状态栏控件用法

首先定义一个函数,它在前2秒将状态栏设置为繁忙状态,2秒后恢复:  代码如下 复制代码 [Js]     var loadFn = function (btn, statusBar) {         btn = Ext.getCmp(btn);         statusBar = Ext.getCmp(statusBar);         btn.disable();         statusBar.showBusy();         Ext.defer(function ()

extjs4中Ext.ProgressBar进度条控件实例

1.加载进度条  代码如下 复制代码 [html]     <div class="content">         <button id="button1">执行</button>         <div id="p1" style="width: 300px;"></div>     </div><br /> [Js]     //加载

extjs4中Ext.window.Window窗口控件的介绍

下面看看面板生成代码: [html]     代码如下 复制代码    <h1>窗口</h1>     <div class="content" style="height:300px">     <button id="button1">打开窗口</button>         <div id="win1"></div>     </

extjs4中Ext.Editor编辑控件用法

1.用文本框编辑普通文本 下面通过一个编辑控件作用在span标签上,双击该标签即可编辑该标签的文本类容.  代码如下 复制代码 [html]     <h1>用文本框编辑普通文本</h1>     <div class="content">     <span id="span1">请双击我修改文字</span>     </div> [Js]     //用文本框编辑普通文本     var

extjs4中Ext.resizer.Resizer 大小变更功能介绍

如下:  代码如下 复制代码 [Js] Ext.onReady(function () {     var basic = Ext.create('Ext.resizer.Resizer', {         target: 'basic',         pinned: true,               //是否显示调节边框         width: 200,         height: 100,         minWidth: 100,         minHeigh

extjs4中Ext.draw.Component 绘图实例介绍

1.实现文本绘图  代码如下 复制代码 [Js]         Ext.create('Ext.draw.Component', {             renderTo: Ext.getBody(),             viewBox: false,             draggable: {                 constrain: true,                    //允许拖动                 constrainTo: Ext.