easyui datagrid行內編輯時的數據聯動

爲了實現easyui datagrid行內編輯時的數據聯動,找了很多方法,也找了不少人幫忙,最後總共用到了三種:
1:取得那一行的數據,設置值,結束行編輯,開始行編輯;
2:動態改變編輯器的類型,前後要結束行編輯,開始行編輯,結束行編輯,開始行編輯,效率最低;
3:使用combobox編輯器,或隱藏,或使能(disabled),或editable,還有hasDownArrow屬性
 
onSelect : function(record) {
						// var row = jQuery('#tt').datagrid('getRows');
						// row[lastIndex].provinceId = record.leafbaseName;
						// jQuery('#tt').datagrid('endEdit', lastIndex);
						// jQuery('#tt').datagrid('beginEdit', currentRowIndex);
						// jQuery('#tt').datagrid('endEdit', lastIndex);
						// changeProvince = true;
						// jQuery('#tt').datagrid('beginEdit', lastIndex);
						var ed = jQuery('#tt').datagrid('getEditor', {
							index : lastIndex,
							field : 'provinceId'
						}); // get the editor
						jQuery(ed.target).combobox('setValue',
								record.leafbaseName + "abc");
						// jQuery('#tt').datagrid('endEdit', lastIndex);
						// changeProvince = false;
						// jQuery('#tt').datagrid('beginEdit', lastIndex);
						if (record.leafbaseName == '武漢') {
							jQuery(ed.target).combobox({
								disabled : false
							});
						} else {

							jQuery(ed.target).combobox({
								disabled : true
							});
						}
						alert(jQuery(ed.target).combobox('getValue'));
					}
 
, {
   field : 'provinceId',
   title : '省份',
   width : 120,
   // hidden : true,
   align : 'center',
   editor : {
    type : 'combobox',
    options : {
     // editable : false,
     // disabled : true,
     hasDownArrow : false
    }
   }
  },
 
  onBeforeEdit : function(row) {
   // if (changeProvince) {
   // var provinceColumn = jQuery('#tt').datagrid(
   // 'getColumnOption', "provinceId");
   // provinceColumn.editor = 'combobox';
   // } else {
   // var provinceColumn = jQuery('#tt').datagrid(
   // 'getColumnOption', "provinceId");
   // provinceColumn.editor = null;
   // }
  }


 

來不及整理,先把這些片段記錄下來,上面將三種方法給混在一起了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章