zoukankan      html  css  js  c++  java
  • $.ajax数据传输成功却执行失败的回调函数

    这个问题迷惑了我好几天,都快要放弃了,功夫不负有心人,最终成功解决,下面写一下我的解决方法。

    我传的数据是json类型的,执行失败的回调函数是因为从后台传过来的数据不是严格的json类型,所以才会不执行成功的回调函数。

    下面贴一下我的代码

    Controller

     @RequestMapping(value="/reg")
        @ResponseBody
        public Map<String,Object> Register(User user) throws IOException{
            Map<String,Object> map = new HashMap<String,Object>();
            boolean isSuccess = userService.Register(user);
            if(isSuccess){
                map.put("tip", "success");
            }
            else{
                map.put("tip", "error");
            }
            return map;
        }

    jsp

    
    
    $.ajax({
    type:'POST',
    data: {"email":email,"password":password,"type":type},
    url:'user/reg',
    async:false,
    dataType: 'json',
    success:function(response){
    alert(response.tip);
    $(form).find(":submit").attr("disabled", false);
    },
    error:function(response){
    alert(response.tip);
    $(form).find(":submit").attr("disabled", false);
    }
    });
    
    

    注意我使用了注解@ResponseBody,该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。

    返回的数据不是html标签的页面,而是其他某种格式的数据时(如json、xml等)使用;

    要想使用@ResponseBody需要在配置文件中启用注解,下面是启用注解的代码

      <!--开启注解-->
        <mvc:annotation-driven />

     SpringMVC中使用@ResponseBody注解标注业务方法,将业务方法的返回值做成json输出给页面

    除了一些spring的包之外,还需要jackson-annotations.jar , jackson-core.jar , jackson-databind.jar 这三个包

    <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
                <version>2.5.4</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
                <version>2.5.4</version>
            </dependency>
    
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>2.5.4</version>
            </dependency>
  • 相关阅读:
    对拍源码QwQ
    BZOJ-3875: [Ahoi2014&Jsoi2014]骑士游戏(SPFA+DP)
    2017年10月19日23:31:57
    BZOJ-1064: [Noi2008]假面舞会 (综合性图论题)
    BZOJ-1002: [FJOI2007]轮状病毒(打表找规律or递推 + 高精度)
    BZOJ1397 Ural 1486 Equal squares
    BZOJ3417 Poi2013 Tales of seafaring
    BZOJ2286 [Sdoi2011消耗战
    BZOJ1370 [Baltic2003]Gang团伙
    BZOJ2530 [Poi2011]Party
  • 原文地址:https://www.cnblogs.com/lwx521/p/8425803.html
Copyright © 2011-2022 走看看