具体排查流程
-
先点击F12,再点击"创建"按钮
观察你的Network,看看请求有没有发出去
如果请求没有发出去,一定是该方法中有js代码写错语法了,排查语法,可以使用简单的alert弹框去做标记
如果请求发出去了,请看第二步 -
在你的ajax的回调函数中第一行,加入alert(data)
观察结果
如果弹框没反应 说明是后台代码出错了,进入到第三步
如果弹出了 object Object,说明我们是有json数据的,打印你拼接的html,看看是不是我们想要的拼接后的option
如果弹出了 [{},{},{}],说明这个json字符串并没有解析为json对象,查看你的dataType
(a.看看你是不是写的是dateType b.看看你是不是写的是datatype) -
观察后台
1. 从Controller开始排查
(1)看参数是不是我们想要接收的
(2)观察业务层有没有报错(错误信息大多数情况比较模糊,不容易排查,需要总结异常经验)
2. 观察Service层
如果是比较复杂的业务逻辑,需要你打断点一步一步进行调试,每走一步,都需要观察结果,是不是我们想要的
如果是比较简单的业务逻辑,则不需要观察
3. 观察dao层
主要观察的是log4j日志为我们打印的sql语句
观察sql语句本身
观察参数
观察返回记录数
4. 如果dao层没有问题,service层也没有问题,controller也没问题(这3层都没有抛异常)
肯定是你的业务层写了一个return null;