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");
        }
    })

}

相关文章

$.AJAX()方法中的PROCESSDATA参数 在使用jQuery的$.ajax()方...
form表单提交的几种方式 表单提交方式一:直接利用form表单提...
文章浏览阅读1.3k次。AJAX的无刷新机制使得在注册系统中对于...
文章浏览阅读1.2k次。 本文将解释如何使用AJAX和JSON分析器在...
文章浏览阅读2.2k次。/************************** 创建XML...
文章浏览阅读3.7k次。在ajax应用中,通常一个页面要同时发送...