ajax json list spring mvc接收

简介: ajax json list spring mvc接收

后台接收

/** 保存新增,@Valid标注spirng在绑定对象时自动为我们验证对象属性并存放errors在BindingResult  */
  @RequestMapping(method=RequestMethod.POST)
    @ResponseBody
  public  Map<String,Object> create( @RequestBody  List<UserSetting> data,BindingResult errors,HttpServletRequest request,HttpServletResponse response) throws Exception {
    int count = -2 ;
        if(data!=null&&RequestUtils.getCurrentUser()!=null)
            count = omUserNoticeSettingManager.save(data,RequestUtils.getCurrentUser().getUserId());
    //Flash.current().success(CREATED_SUCCESS); //存放在Flash中的数据,在下一次http请求中仍然可以读取数据,error()用于显示错误消息
        Map<String,Object> result = new HashMap<String, Object>();
        result.put("result","success");
        result.put("count",count);
        return result;
  }

前台

noticeSetting.sumbitform = function(btn){
    var itemArray = new Array();
    var  ispass = true;
    var errorIndex;
    $.each($("#settingtable tbody tr"), function(i, item){
        var selects = $(this).find("select");
        var deviceTypeS = $(selects.get(0)).data("kendoDropDownList");
        var deviceStatuS =$(selects.get(1)).data("kendoDropDownList");
        var branchareas = $(selects.get(2)).data("kendoMultiSelect");
        var item ={"deviceTypeId":parseInt(deviceTypeS.value()),
                    "deviceStatus":deviceStatuS==null?null:parseInt(deviceStatuS.value()),
                    "branchareas":branchareas==null?null:branchareas.value()};
        itemArray.push(item);
        if(deviceStatuS ==null||branchareas==null||branchareas.value().length==0){
            errorIndex=i+1;
            ispass = false;
            return false;
        }
    });
    if(!ispass){
        btn.removeAttr("disabled");
        $("#addtrbtn").removeAttr("disabled");
        $("#sumbitbutton").data("result","");
        noticeSetting.notify("第"+errorIndex+"行没选择完整","error");
        return false;
    }
    $.ajax({
        url: baseContext+"/omusernoticesetting.json",
        cache: false,
        dataType:"json",
        contentType:"application/json",
        type:"post",
        data:JSON.stringify(itemArray),
        success: function(data){
            $("#sumbitbutton").data("result","success");
            $("#sumbitbutton").data("count",data.count);
            var count = parseInt(data.count);
            if(count==0){
                noticeSetting.notify("重复设置不会添加","error");
            }else if(count>0){
                noticeSetting.notify("成功添加"+count+"条设置","success");
            }else{
                noticeSetting.notify("添加失败","error");
            }
            btn.removeAttr("disabled");
            $("#addtrbtn").removeAttr("disabled");
        },
        error:function(data){
            btn.removeAttr("disabled");
            $("#addtrbtn").removeAttr("disabled");
            $("#sumbitbutton").data("result","error");
            noticeSetting.notify("添加失败","error");
        }
    })
}
相关文章
|
2月前
|
JSON 前端开发 JavaScript
json字符串如何转为list对象?
json字符串如何转为list对象?
332 7
|
3月前
|
JSON 前端开发 JavaScript
JavaWeb基础8——Filter,Listener,Ajax,Axios,JSON
Filter过滤器、Listener监听器、AJAX、 同步、异步优点和使用场景、Axios异步框架、JSON、js和JSON转换、案例,Axios + JSON 品牌列表查询和添加
JavaWeb基础8——Filter,Listener,Ajax,Axios,JSON
|
4月前
|
JSON 前端开发 Java
Spring MVC返回JSON数据
综上所述,Spring MVC提供了灵活、强大的方式来支持返回JSON数据,从直接使用 `@ResponseBody`及 `@RestController`注解,到通过配置消息转换器和异常处理器,开发人员可以根据具体需求选择合适的实现方式。
183 4
|
4月前
|
XML JSON 前端开发
JSON与AJAX:网页交互的利器
JSON与AJAX:网页交互的利器
41 0
|
6月前
|
JSON fastjson 数据格式
使用jackson和fastjson实现list与json互转
使用jackson和fastjson实现list与json互转
|
6月前
|
前端开发 JavaScript Java
Spring创建Ajax和接受Ajax数据-spring20
Spring创建Ajax和接受Ajax数据-spring20
|
6月前
|
XML JSON 前端开发
第十一篇JavaScript JSON与AJAX
第十一篇JavaScript JSON与AJAX
34 0
|
7月前
|
XML JSON 前端开发
Ajax – JSON入门指南
Ajax – JSON入门指南
62 1
|
6月前
|
JSON 前端开发 Java
记录一次让我吐血的spring3 MVC HTTP406 Json转换错误
记录一次让我吐血的spring3 MVC HTTP406 Json转换错误
36 0
|
6月前
|
JSON Java 数据格式
将JSON格式的字符串转换成List集合引入gson 的jar包
将JSON格式的字符串转换成List集合引入gson 的jar包
43 0