找回密码
 立即注册

QQ登录

只需一步,快速开始

yaochenglong

高级会员

19

主题

68

帖子

1745

积分

高级会员

积分
1745

活字格认证

yaochenglong
高级会员   /  发表于:2015-11-3 20:28  /   查看:5737  /  回复:2
如图:



如图:抵店时间的值是从地点日期里截取出来的。现在截取好了,也给抵店时间设置值了,但是flexGrid没有显示,代码片段如下:
  1. if (data != "" && data.length > 0) {
  2.                         var array_book = [];
  3.                         for(var i=0;i<data.length;i++){
  4.                                   array_book.push({
  5.                                         bookRoomId: data[i].bookRoomId,
  6.                                         roomtypeId: data[i].roomtypeId,
  7.                                         bookNum: data[i].bookNum,
  8.                                         saveNum:data[i].saveNum,
  9.                                         reachDate: new Date(data[i].reachDate),
  10.                                         leaveDate: new Date(data[i].leaveDate),
  11.                                         抵店时间: "",
  12.                                         roomPrice: data[i].roomPrice,
  13.                                         reachNum: data[i].reachNum,
  14.                                         buttons: "",
  15.                                   });
  16.                        }
  17.                         ///////  FlexGird    ///////
  18.                         editBookRoomView = new wijmo.collections.CollectionView(array_book);
  19.                         editBookRoomFlexGrid = new wijmo.grid.FlexGrid('#div_bookRoom',{
  20.                             autoGenerateColumns: false,
  21.                             selectionMode: wijmo.grid.SelectionMode.Row,
  22.                             //allowResizing: wijmo.grid.AllowResizing.None,
  23.                             allowAddNew: true,
  24.                             columns: [
  25.                             {
  26.                                 header: '主键',
  27.                                 binding: "bookRoomId",
  28.                                 width: 50,
  29.                                 isReadOnly: false,
  30.                                 visible: false
  31.                             },
  32.                             {
  33.                                 header: '房类',
  34.                                 binding: "roomtypeId",
  35.                                 width: '*'
  36.                             },
  37.                             {
  38.                                 header: '订房数',
  39.                                 binding: "bookNum",
  40.                                 width: '*'
  41.                             },
  42.                             {
  43.                                 header: '留房数',
  44.                                 binding: "saveNum",
  45.                                 name: "saveNum",
  46.                                 width: '*',
  47.                                 isReadOnly: true
  48.                             },
  49.                             {
  50.                                 header: '抵店日期',
  51.                                 binding: "reachDate",
  52.                                 format: 'yyyy-MM-dd',
  53.                                 width: 100
  54.                             },
  55.                             {
  56.                                 header: '离店日期',
  57.                                 binding: "leaveDate",
  58.                                 format: 'yyyy-MM-dd',
  59.                                 width: 100
  60.                             },
  61.                             {
  62.                                 header: '抵店时间',
  63.                                 binding:'抵店时间',
  64.                                 name:'抵店时间',
  65.                                 width: 100
  66.                             },
  67.                             {
  68.                                 header: '房价',
  69.                                 binding: "roomPrice",
  70.                                 width: '*'
  71.                             },
  72.                             {
  73.                                 header: '抵达数',
  74.                                 binding: "reachNum",
  75.                                 width: '*'
  76.                             },
  77.                             {
  78.                                 header: '操作',
  79.                                 binding: "buttons",
  80.                                 name: "buttons",
  81.                                 width: '*'
  82.                             },
  83.                             ],
  84.                             itemsSource: editBookRoomView,
  85.                         });
  86.                         
  87.                         editBookRoomFlexGrid.itemFormatter = function(panel, r, c, cell) {
  88.                             if (panel.cellType == wijmo.grid.CellType.Cell) {
  89.                                 var col = panel.columns[c],
  90.                                 html = cell.innerHTML;
  91.                                 if (r == editIndex) {
  92.                                        
  93.                                 } else {
  94.                                     switch (col.name) {
  95.                                     case 'buttons':
  96.                                         cell.style.padding = '3px';
  97.                                         html = '<div>' +
  98.                                         '&amp;nbsp;&amp;nbsp;' +
  99.                                         '<a href="javascript:void(0)" class="btn btn-default btn-sm" onclick="editRow(' + r + ')">' +
  100.                                         '<span class="glyphicon glyphicon-pencil"></span> 留房' +
  101.                                         '</a>' +
  102.                                         '</div>';
  103.                                        
  104.                                         break;
  105.                                     case 'saveNum':
  106.                                         var val = panel.getCellData(r, c);
  107.                                         if (val == null  || val == "") {
  108.                                             panel.setCellData(r, c, '0', false, false);
  109.                                         }
  110.                                         break;
  111.                                     //关键代码start
  112.                                     case '抵店时间':
  113.                                             var val = panel.getCellData(r,4);
  114.                                             var val1 = formatterDate(val,'yyyy-MM-dd hh:mm:ss');
  115.                                             if(val!=null &amp;&amp; val!=""){
  116.                                                     var hourMin  = val1.substring(11, 16);
  117.                                                     console.info("------");
  118.                                                 console.info(hourMin);
  119.                                                     panel.setCellData(r,c,'08:11',true,false);
  120.                                             }
  121.                                             break;
  122.                                     //关键代码end
  123.                                     }
  124.                                 }
  125.                                 
  126.                                 if (html != cell.innerHTML) {
  127.                                     cell.innerHTML = html;
  128.                                     cell.style.padding = '3px';
  129.                                 }
  130.                            
  131.                             }
  132.                         }
  133.                         ;
  134.                         editBookRoomView.trackChanges = true;
  135.                         var col = editBookRoomFlexGrid.columns.getColumn('roomtypeId');
  136.                         col.dataMap = new wijmo.grid.DataMap(msg.attributes.roomTypeList,'codeId','codeNamec');
  137.                     }
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

2 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-11-4 09:56:00
沙发
回复 1楼yaochenglong的帖子

感谢您的反馈。
从您的代码来看,展示的结果就是代码逻辑的结果。
请检查您的代码逻辑是否出错。
首先通过binding绑定数据源的抵店时间,在数据源里这个字段就是空。
然后在itemFormatter里,判断如果是抵店时间,获取这个单元格的值。
这个时候val=panel.getCellData方法得到的val就是空。
最后你判断val!=null并且val!=&quot;&quot;的时候,去设置值,因为val始终为空,因此这段逻辑根本走不到里面。

所以最后的值肯定是空。

针对您的问题,第一种是在您的代码基础上,将val!=null的代码逻辑更改成合适的判断。
第二种,将抵店时间绑定为数据源里的reachDate。

最后要指出的是,您在代码里binding使用&quot;&quot;,在谷歌浏览器下会报错。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-11-4 10:22:00
板凳
回复 1楼yaochenglong的帖子


根据电话沟通,无法重现您的问题。
如下demo是我测试用的,按您所说,可以正常显示。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部