Extjs的submit()方法提交的数据:如下:

this.formPanel.getForm().submit({
                url:this.saveUrl,
                method:'POST',
                params:{
                    flag:e
                },
                success:function(form,action){
                    Ext.MessageBox.alert('提示',action.result.msg,function(){
                        this.store.reload();
                        this.hide();
                    },this);
                },
                failure:function(form,action){
                    Ext.MessageBox.alert('提示',action.result.msg);
                },
                scope:this
            });

Extjs的Ajax方法提交的数据以及返回的结果如下:

Ext.MessageBox.confirm('提示','确定置顶当前制度',function(button){
            if(button=='yes'){
                Ext.Ajax.request({
                    url:this.isTopOrNotUrl,
                    method:'POST',
                    params:{
                        rulesId:record.data.rulesId
                    },
                    success:function(response,options){
                        var text = Ext.decode(response.responseText);
                        Ext.Msg.alert('提示',text.msg,function(){
                            this.store.reload();
                        },this);
                    },
                    failure:function(){
                        Ext.Msg.alert('提示','请求失败!');
                    },
                    scope:this
                });
            }
        },this);

后台修改或者删除完了,能够返回给前台Java代码后台写好的数据,因为封装了一个ExtReturn类型:如下:

package cn.edu.hbcf.common.vo;
 
/**
 * Ext Ajax 返回对象
 *
 * @author LiPenghui
 * @date 2012-02-21 19:30:00
 *
 */

public class ExtReturn {

private boolean success; // 是否成功
    private Object msg; // 返回消息
    private Object otherObject;// 其他对象

public ExtReturn() {

}

/**
     * 是否更新成功的构造方法
     *
     * @param success
     *            是否成功
     * @param msg
     *            消息
     */
    public ExtReturn(boolean success, Object msg) {
        this.success = success;
        this.msg = msg;
        this.otherObject = "";
    }

/**
     * 是否更新成功的构造方法
     *
     * @param success
     *            是否成功
     * @param msg
     *            消息
     * @param otherObject
     *            其他对象
     */
    public ExtReturn(boolean success, Object msg, Object otherObject) {
        this.success = success;
        this.msg = msg;
        this.otherObject = otherObject;
    }

/**
     * 异常时的构造函数
     *
     * @param errormsg
     *            异常消息
     */
    public ExtReturn(Object errormsg) {
        this.success = false;
        this.msg = false;
        this.otherObject = "";
    }

/**
     * 判断是否成功
     *
     * @return
     */
    public boolean isSuccess() {
        return success;
    }

/**
     * 设置返回是否成功的状态
     *
     * @param success
     */
    public void setSuccess(boolean success) {
        this.success = success;
    }

/**
     * 设置其他对象
     *
     * @return
     */
    public Object getOtherObject() {
        return otherObject;
    }

/**
     * 获取其他对象
     *
     * @param otherObject
     */
    public void setOtherObject(Object otherObject) {
        this.otherObject = otherObject;
    }

/**
     * 获取返回的消息
     *
     * @return
     */
    public Object getMsg() {
        return msg;
    }

/**
     * 设置返回的消息
     *
     * @param msg
     */
    public void setMsg(Object msg) {
        this.msg = msg;
    }
}
controller中直接调用即可,如下:

@RequestMapping(value="/isTopOrNotUrl",method=RequestMethod.POST)
    @ResponseBody
    public ExtReturn isTopOrNotUrl(HttpSession session,BaseRules baseRules){
        BaseUsers u = (BaseUsers) session.getAttribute(WebConstants.CURRENT_USER);
        baseRules.setIsTop(1);
        baseRules.setUpdateUser(u);
        baseRules.setUpdateTime(new Date());
        try {
            baseRulesService.isTopOrNotUrl(baseRules);
            return new ExtReturn(true,"置顶成功");
        } catch (Exception e) {
            e.printStackTrace();
            return new ExtReturn(false,"置顶失败");
        }
    }

mybatis中的xml如下:

<update id="isTopOrNotUrl" parameterType="cn.edu.hbcf.plugin.sms.baseRules.pojo.BaseRules">
    update SMS_BASE_RULES t
       set t.UPDATE_USER    = #{updateUser.userId,jdbcType=VARCHAR},
           t.UPDATE_TIME   = #{updateTime,jdbcType=TIMESTAMP},
           t.IS_TOP   = #{isTop,jdbcType=INTEGER}
        <where>
             t.RULES_ID = #{rulesId, jdbcType=VARCHAR}
        </where>   
</update>

很简单的封装,接收数据方便多了

Extjs读取更改或者发送ajax返回请求的结果简单封装的更多相关文章

  1. python网页请求urllib2模块简单封装代码

    这篇文章主要分享一个python网页请求模块urllib2模块的简单封装代码. 原文转自:http://www.jbxue.com/article/16585.html 对python网页请求模块ur ...

  2. 阶段3 3.SpringMVC·_04.SpringMVC返回值类型及响应数据类型_7 响应json数据之发送ajax的请求

    编写conroller的方法 @RequestBody获取请求体的内容.当前请求体传递的是json字符串. 拿到了请求的内容

  3. jQuery 发送 ajax json 请求。。

    $.extend({ postJson: function (data) { data = data || {} $.ajax({ type: "POST", url: data. ...

  4. 响应json数据之发送ajax的请求

    一.前端异步请求代码: <span style="font-size:14px;">$.ajax ({ type: "POST", //请求的方式 ...

  5. 移动App,AJAX异步请求,实现简单的增、删、改、查

    用ajax发异步请求时,要注意url."AppServer"为后台项目名,"LoginServlet.action"为web.xml中的<url-patt ...

  6. RestTemplate get请求多参数 简单封装

    使用RestTemplate发送get请求时,如果有多个参数拼接起来会比较麻烦,在此做个简单的封装 public static void main(String[] args) { Map<St ...

  7. React Native中的网络请求fetch和简单封装

    React Native中的网络请求fetch使用方法最为简单,但却可以实现大多数的网络请求,需要了解更多的可以访问: https://segmentfault.com/a/1190000003810 ...

  8. 09.VUE学习之watch监听属性变化实现类百度搜索栏功能ajax异步请求数据,返回字符串

    cmd下安装axios npm install axios 安装好后,会多出node_modules文件夹 思路: 监听data里的word改变时,发送ajax异步请求数据, 把返回的数据赋值给dat ...

  9. Ajax发送PUT/DELETE请求时出现错误的原因及解决方案

    本文讲什么? 大家应该都知道.在HTTP中,规定了很多种请求方式,包括POST,PUT,GET,DELETE等.每一种方式都有这种方式的独特的用处,根据英文名称,我们能够很清楚的知道DELETE方法的 ...

随机推荐

  1. GMM算法k-means算法的比较

    1.EM算法 GMM算法是EM算法族的一个具体例子. EM算法解决的问题是:要对数据进行聚类,假定数据服从杂合的几个概率分布,分布的具体参数未知,涉及到的随机变量有两组,其中一组可观测另一组不可观测. ...

  2. BZOJ-1206 虚拟内存 Hash+离散化+Priority_Queue

    闻说HNOI每年都有一道Hash. 1206: [HNOI2005]虚拟内存 Time Limit: 50 Sec Memory Limit: 162 MB Submit: 330 Solved: 2 ...

  3. Bringing up interface eth0: Error:Connection activation failed:Device not managed by NetworkManager

    Just follow the below steps and everything will be ok...   1. Remove Network Manager from startup Se ...

  4. 洛谷P2015 二叉苹果树

    题目描述 有一棵苹果树,如果树枝有分叉,一定是分2叉(就是说没有只有1个儿子的结点) 这棵树共有N个结点(叶子点或者树枝分叉点),编号为1-N,树根编号一定是1. 我们用一根树枝两端连接的结点的编号来 ...

  5. OpenJudge 7624 山区建小学

    在openjudge似乎无法凭题号搜到题...? 总时间限制:  1000ms  内存限制:  65536kB 描述 政府在某山区修建了一条道路,恰好穿越总共m个村庄的每个村庄一次,没有回路或交叉,任 ...

  6. Linux Kernel File IO Syscall Kernel-Source-Code Analysis(undone)

    目录 . 引言 . open() syscall . close() syscall 0. 引言 在linux的哲学中,所有的磁盘文件.目录.外设设备.驱动设备全部被抽象为了"文件" ...

  7. android 开发问题:java.lang.ClassCastException

    java.lang.ClassCastException: libcore.net.http.HttpURLConnectionImpl cannot be cast to javax.net.ssl ...

  8. Android Studio集成SVN报错:can't use subversion command line client : svn

    Android Studio集成SVN插件,check out出代码后,每次开启都会在右上角出现如下错误: Can't use Subversion command line client: svn ...

  9. XUnit学习

    1.建立测试单元项目 2.引用XUnit.dll或者在Nuget里安装XUnit 3.安装Nuget->xUnit.net[Runner: Visual Studio] 4.打开 测试-> ...

  10. linux5

    linux 命令 1.pwd 打印当前目录 2.ls(list) 蓝色为文件夹 黑色为文件 绿色为可执行文件 红色为压缩包 参数: ls -1 每一列只显示一个文件或目录名称 ls -a 显示所有文件 ...