这是ajax对应的controller,success的话可以正常执行,如何添加一个error啊?

var _data;
var jiedao;
//服务区域联动
$('#qu').on('change',function(){
    var value = $(this).val();
    $.ajax({
        url: 'questionnaire/jiedao',
        method: 'POST',
        type:'json',
        data: {
            qu: value
        },
        success: function (data) {

            _data=JSON.parse(data);
            jiedao='<option value="-1">--请选择--</option>';
            for (var i = 0; i < _data.length; i++) {
                jiedao+='<option value="'+ _data[i].id +'">'+ _data[i].name +'</option>'
            }
            $('#jiedao').html(jiedao)
        },
    })
})

这是controller

 @RequestMapping(value = "/jiedao")
    public void jiedao(HttpServletRequest request, HttpServletResponse response) throws SQLException, IOException{

        List<Area> listArea =  areaService.findJiedao( request.getParameter("qu"));
        String str = "";
        for(Area con : listArea){
            str += "{ \"id\" : \"" + con.getId() + "\", \"name\" : \"" + con.getName() + "\"},";
        }
        
        if(str.endsWith(",")){
            str = str.substring(0, str.length() - 1);
        }
        str = "[" + str + "]";
        response.getWriter().write(str);
        response.getWriter().close();
    }
阅读 1.8k
2 个回答

需要将data增加状态码,通过约定的状态码来判断成功与否:

{
    returnCode: 1,
    returnMessage: "操作成功",
    data: [...]
}
新手上路,请多包涵

不是很明白你的意思,如果你是想说你在系统中自定义一个错误然后返回来再根据错误信息做相对应的处理的话。可以使用楼上的方法。但是如果不是的话,建议你看一下$.ajax的api。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题