常见的js报错和处理

         进入新公司,做内容管理系统和前台网站,我又捡起了自己的前端知识技能。公司有专业且很牛逼的前端,但是项目很多,任务很多,不能大小问题都去找人家帮忙解决,只好自己下手干了。在工作中,几乎每天都需要改bug,有些出错不注意真的不好找,需要一步步调试排错,颇费时间。遇到了不少简单的错误,以前是知道的,很久未用,有点想不起来了。所以,还是要注意总结积累,在此做个记录。

    1、问题:ajax出错,总是进不了success方法

       原因:返回参数写的不对,ajax里标注了dataType为json,但是后台返回值是String,直接出错进了error,进不了success。而我又没写error,所以没有发现。

         解决:我将返回改成了json字符串。

    2、问题:datagrid加载表格数据时,render函数设值时获取不到记录的属性值,报错,加载不出表格

         原因:拼写错误了记录的属性字段,render函数js报错

         解决:修正字段名

    3、问题:XML解析错误,找不到根元素,ajax调用后台方法报错

         原因:ajax调用的后台的方法类型是void,无返回值。

         解决:修改方法类型,给返回值。

    4、问题:ajax调用后台获取list数组时,遍历list取不到每条记录,而是字符串的字符

         原因:dataType类型用了“text”,会将结果作为字符串接收解析

         解决:dataType改为“json”

    5、问题:对元素绑定鼠标单击事件,用触发器绑定方法,IE8不生效

         原因:动态拼接html字符串时,多加了一个

,IE8容错性很差,识别不了元素

         解决:删除多余的

。IE8兼容错误,好多都是js、html代码写的有问题,高版本不会有问题,低版本IE会报错;另外有些新的属性和方法,IE8及以下浏览器识别不出来,如input的placeholder属性,IE8会把提示作为默认值显示使用。

     6、问题:动态填充html失败,后台无报错,能取到数据

          原因:粗心,动态填入属性时,未注意参数变化,拼错元素id,对应元素不存在。

          解决:更正错误。

     7、问题:ajax调用,传递数组参数ids失败,后台取不到值

          原因:后台方法接收数组参数时出错,@RequestParam("ids") Long[] ids

          解决:添加spring注解时加上“[]”, @RequestParam("ids[]") Long[] ids 


   点滴积累,方能进步,会在里面持续更新。未完待续。

你可能感兴趣的:(前端知识,异常报错,ajax进不了success,datagrid的render,XML解析错误,找不到根元素,遍历list只得到字符,常用js,ajax报错)