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里面存在空格;