常见的js报错和处理

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/u010882234/article/details/80548897

         进入新公司,做内容管理系统和前台网站,我又捡起了自己的前端知识技能。公司有专业且很牛逼的前端,但是项目很多,任务很多,不能大小问题都去找人家帮忙解决,只好自己下手干了。在工作中,几乎每天都需要改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字符串时,多加了一个</div>,IE8容错性很差,识别不了元素

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

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

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

          解决:更正错误。

<div class="tj_list fr">
	<div class="con active" id="btab1"></div>
	<div class="con" id="btab2"></div>
	<div class="con" id="btab3"></div>
</div>
<script>
    $(function(){
    	//加载点击排行
        loadClickCount(0);
        loadClickCount(1);
        loadClickCount(2);
    });
    function loadClickCount(type){
        Ls.ajax({
            dataType: "html",
            data: {
                topCount: 6,
                sort: 0,
                type: type,
                siteId : 6929487
            },
            url: "/site/label/7240996"
        }).done(function (d) {
        	//之前是$("#btab"+type).html("<ul>"+d+"</ul>")出错的
            var num = parseInt(type)+1;
            $("#btab"+num).html("<ul>"+d+"</ul>");
        })
    }
</script>

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

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

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


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

猜你喜欢

转载自blog.csdn.net/u010882234/article/details/80548897