zoukankan      html  css  js  c++  java
  • easyui datagrid 遇到的坑 cannot read property ·· pageNum bug and so on

    1 本人刚刚接到一个bug,就是初始化时若设置了datagrid到指定页数,点击下一页显示不对,4 --> ‘4’+1=41的字符串形式,再点击超出页码范围直接到最后一页;

    原因:因为 pageNumber接收的是整数型的数据,而你遇到这种bug说明你传入的非整型的数据,需要利用parseInt进行转化一下,就不会再出现这样的错误了;

    function queryTable(params) {
            $('#tt').datagrid({
                 $(".queryTable").width()+60,
                height:($(window).height()-240),
                queryParams: params||{},
                pageNumber:parseInt(prepage)||'',
                pageSize:parseInt(prerows)||'',
                singleSelect: true,
                loadMsg: "Loading, please wait ...",
                pageList: [15,25,35,45,65,100],
                idField:'id',
                url:'/CarlcareManager/posts/findPostLists',
                method:'get',
                columns:[[
                    {field:'post_language',title:'Language','8%',align:'center'},
                    {field:'post_type',title:'Type',align:'center','8%',formatter:function(val,obj,idx){
                        var rtn='';
                        if(val!=0&&val==''){
                            rtn='';
                        }else{
                            switch(val){
                                case 1:
                                    rtn='Official';
                                    break;
                                case 2:
                                    rtn='Skill';
                                    break;
                                case 3:
                                    rtn='Problem';
                                    break;
                                case 4:
                                    rtn='Entertainment';
                                    break;
                                case 9:
                                    rtn='Others';
                                    break;
                            }
                        }
                        return rtn;
                    }},
                    {field:'publish_time',title:'Publishing time','8%',align:'center',formatter:function(val,obj,idx){
                        return dateFormat(parseInt(val));
                    }},
                    {field:'username',title:'Owner','8%',align:'center'},
                    {field:'post_title',title:'Title','18%',align:'center'},
                    {field:'view_count',title:'Views','6%',align:'center'},
                    {field:'reply_count',title:'Comments','6%',align:'center'},
                    {field:'collect_count',title:'Favorites','6%',align:'center','10%'},
                    {field:'comment',title:'Marks','10%',align:'center'},
                    {field:'post_status',title:'Status','6%',align:'center',formatter:function(val,obj,idx){
                        var rtn='';
                        if(val==1){
                            rtn='Published';
                        }else{
                            rtn='Delete';
                        }
                        return rtn;
                    }},
                    {field:'view_status',title:'Operation','10%',align:'center',formatter:function(value,obj,index){
                        var html='';
                        if(value==1){
    //            html="<a class='viewed' type='button' name='replyStatus' onclick='postDetail(obj.id,obj.post_status)' href='../customer/postDetailPage?postId="+obj.id+"&postStatus="+obj.post_status+"' value='View'>View</a>";
                            html="<a class='alink viewed' type='button' name='replyStatus' onclick='postDetail("+obj.id+","+obj.post_status+")' value='View'>View</a>";
    
                        }else{
    //            html="<a class='unviewed' type='button' name='replyStatus'  onclick='postDetail(obj.id,obj.post_status)' href='../customer/postDetailPage?postId="+obj.id+"&postStatus="+obj.post_status+"' value='UnView'>UnView</a>";
                            html="<a class='alink unviewed' type='button' name='replyStatus'  onclick='postDetail("+obj.id+","+obj.post_status+")' value='UnView'>UnView</a>";
    
                        }
                        return html;
                    }}
    
                ]],
                onLoadSuccess:function(data){
                },
                onLoadError:function(){
                }
            });
            $('#tt').datagrid("clearSelections");
        }

     2 datagrid表格初始化时总是会报错 cannot read property ‘width/height··’

    我碰到的发生这种错误有两种原因(easyui datagrid内部有不能识别的数据)

    a - field单词拼写错误

    b - queryTable请求地址拿回来的数据格式不对,比如下面,拿回的数据若不是rows会报类似错误;

     

     3 今天在使用jquery easyui时遇到一个问题,easyui的datagrid无法加载。可能原因是field里面存在空格;

  • 相关阅读:
    头部布局,搜索验证和AJAX自动搜索提示,并封装成组件,提高代码复用性
    yii2 使用指定数据库执行createCommand
    yii2在控制器中调用另一个控制器方法
    yii2 命令行执行php命令 commands(命令)
    ArrayDataProvider数据分页
    Yii2 数据查询
    Yii2的Gridview应用技巧补充
    yii2 or查询
    SQL---mysql新增字段
    Yii2.0 安装使用报错:yiiwebRequest::cookieValidationKey must be configured with a secret key.
  • 原文地址:https://www.cnblogs.com/xhliang/p/8193744.html
Copyright © 2011-2022 走看看