ip.js 表格控制-API屬性設(shè)置

  1. gridAPI
    ----------------------1.1 手動(dòng)創(chuàng)建表格--------------------
  • Grid屬性API、 Grid列屬性API、 Grid生命周期API。
    要用的屬性都在html創(chuàng)建表格時(shí)寫上。
    如下:
    Grid屬性、Grid生命周期 寫在u-meta里, Grid列屬性創(chuàng)建列時(shí)寫在options里。
//Grid屬性API  //Grid生命周期API eg: onRowFocus
<div id="attachGrid" class="new-add-grid-style"  style="height:42%;"
u-meta='{"id":"attachgrid","type":"grid","data":"filesDataTable",
          "showNumCol":"false",
          "columnMenu":false,
          "canDrag":true,
          "sortable":false,
          "canSwap":true,
          "multiSelect": true,
          "columnMenu":true,
          "editable":true,
          "cancelFocus":false,
          "cancelSelect":false,
          "headerHeight":32,
          "rowHeight":32 ,
          "showNumCol": true,
          "showSumRow": false,
          "sumRowFirst":true,
          "onRowFocus":"onRowFocus",
          "onBeforeValueChange":"onBeforeValueChange"}'>
        //Grid列屬性API
        <div options='{"field":"fileName",
                       "dataType":"String","title":"文件名稱",
                       "width":"200",
                       "renderType":"",
                       "editType":""}'>
        </div>
        <div options='{"field":"fileType",
                        "dataType":"String",
                        "title":"文件類型" ,"width":"80",
                        "renderType":"",
                        "editType":""}'>
        </div>
</div>
  • js
var viewModel = {
  filesDataTable: new u.DataTable({
            meta : {
                "fileName" : {
                    type : 'string'
                },//文件名稱
                "fileType" : {
                    type : 'string'
                }//文件類型
            }
        }),
}
  • Grid方法API
1.方法一:
通過(guò)生命周期方法參數(shù)獲取并保存gridObj。通過(guò)gridObj使用grid方法。
//Grid方法API 
var gridObj  = {};
onRowFocus = function(obj){
            gridObj = obj.gridObj
}
gridObj.getAllRows();

2.方法二(推薦):
//視圖id = attachgrid(在u-meta中定義了id)
var gridObj = $('#attachgrid' ).parent()[0]['u-meta'].grid;
//setRenderType 設(shè)置渲染方法
gridObj .getAllRows();
  • u.js? 賦值等 setSimpleData
viewModel.filesDataTable.setSimpleData(data);
var filesData = viewModel.filesDataTable.getSimpleData({type:"select"});
var delchrIds = vm.accountBookDataTable.getSimpleData({
            type : 'select',
            fields:['chrId']
        });

---------------------2.2 視圖創(chuàng)建表格-------------------

  • 初始化表格
viewModel.initData = function() {
   for ( var n = 0; n < viewModel.viewList.length; n++) {
      var view = viewModel.viewList[n];
      if (view.viewtype == PeConstant.ViewType.VIEWTYPE_LIST) {// 列表視圖
        if (view.orders == '1') {
        viewModel.gridViewid_fileList = view.viewid;
            viewModel.tableViewDetail_fileList = view;
        }
      }else if (view.viewtype == PeConstant.ViewType.VIEWTYPE_QUERY) {// 查詢視圖
      } 
 }
  //初始化主頁(yè)面未審核、已審核列表
viewModel.gridViewModel_fileList = ip.createGrid(viewModel.gridViewid_fileList, 'fileListGrid',"", options, 0, false, false, false, false);
};      
  • Grid屬性API

  • Grid列屬性API

  • Grid生命周期API
    生命周期方法在創(chuàng)建視圖時(shí)自動(dòng)生成,方法名稱是表名+下劃線+事件(onXxxx),直接使用。具體可調(diào)試查看生成的表格。

fileListGrid_onRowSelectedFun = function(){}

fileListGrid_onRowUnSelectedFun = function(){}

fileListGrid_onDbClick = function(){}

fileListGrid_onRowSelected = function(){}
image.png
  • Grid方法API
//viewModel.gridViewid 視圖id
var gridObj = $('#' + viewModel.gridViewid_fileList.substring(1, 37) + '').parent()[0]['u-meta'].grid;
//setRenderType 設(shè)置渲染方法
gridObj .setRenderType("fileName",viewModel.attachRenderType);

viewModel.attachRenderType= function(obj){
        if(obj.value && "1" == obj.value){
            obj.element.innerHTML = "<input type='checkbox' value='1' checked='checked'/>";
        }else{
            obj.element.innerHTML = "<input type='checkbox' value='1'/>";
        }
 }
  • u.js? 賦值等 setSimpleData
//分步
var gridObj = $('#' + viewModel.gridViewid_fileList.substring(1, 37) + '').parent()[0]['u-meta'].grid;
var fileListDataTable= gridObj .dataTable;
fileListDataTable.setSimpleData(data);
//簡(jiǎn)寫
var fileListDataTable = $('#' + viewModel.gridViewid_fileList.substring(1, 37) + '').parent()[0]['u-meta'].grid.dataTable;

var ids = viewModel.gridViewModel_fileList.gridData.getSimpleData({
                                type : 'select',
                                fields:['chrId']//其他都是CHR_ID
                            });
                    
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒(méi)有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,632評(píng)論 1 32
  • 1.ios高性能編程 (1).內(nèi)層 最小的內(nèi)層平均值和峰值(2).耗電量 高效的算法和數(shù)據(jù)結(jié)構(gòu)(3).初始化時(shí)...
    歐辰_OSR閱讀 30,217評(píng)論 8 265
  • 讓大海絕跡 月亮變低 我想擁抱你 在最美的春季 像思念化作雨滴 像喜悅變成月季 我和你 只隔一朵玫瑰的距離
    南風(fēng)之南閱讀 215評(píng)論 0 3
  • 我也記不得我是有多久沒(méi)看過(guò)電影,更別說(shuō)進(jìn)電影院了。內(nèi)心里能否感受到幸福好像與婚姻沒(méi)有關(guān)系,
    拉菲圓圈閱讀 193評(píng)論 0 0
  • 一切數(shù)學(xué)都是同義反復(fù) 也就是說(shuō),作為一種形式系統(tǒng)的算術(shù)無(wú)法保證不會(huì)得出一等于二這樣的結(jié)果 盡管態(tài)度無(wú)比虔誠(chéng),他們?nèi)?..
    何青猊閱讀 606評(píng)論 0 2

友情鏈接更多精彩內(nèi)容