AR.DataGrid 文檔
用法:
<body> <table id="dg"></table> </body> </html> <script type="text/javascript"> var dg = new AR.DataGrid("Sys_Role"); dg.isEditor = true; dg.PKColumn.add("detail", "權限分配", 'roleAction', null, "權限分配", "edit"); dg.bind(); function roleAction(v, r, i) { var rname = r.rolename; AR.Utility.Window.open('RoleAction.html?id=' + v, '當前角色(' + rname + ')'); } </script>
構造函數
名稱 |
說明 |
new AR.DataGrid (objName,tableName,tableID,isTreeGrid) |
objName:主對象名(視圖名或表名) 用於獲取列頭和數據呈現表格 tableName:表名,用於編輯或刪除操作 tableID:默認dg,否則需要指定 isTreeGrid:如果為true。 同時需要指定三個參數: dg.options = { idField: "ID列", treeField: "名稱列", parentField: "父級ID列" }
|
1:對象:
名稱 |
說明 |
PKColumn |
主鍵操作區(編輯、刪除、保存、取消) |
Search |
搜索查詢區 |
ToolBar |
功能按鈕區 |
HeaderMenu |
配置表頭的右鍵菜單 |
ContextMenu |
行的右鍵菜單 |
2:屬性:
名稱 |
說明 |
Internal |
內部參數,包括: this.Internal = { primarykey: 主鍵名稱, headerData: 列頭數據, isLoadCompleted: 表格數據是否已加載完成 } |
ToolArea |
工具區(包含搜索區和按鈕區) this.ToolArea = { id: div的ID, $target: JQ對象, Search: this.Search, ToolBar: this.ToolBar, isHidden: 是否隱藏(包括Search隱藏和ToolBar隱藏) } |
id |
表格的ID |
isTreeGrid |
【默認false】TreeGrid或DataGrid屬性 |
tableName |
表名 |
objName |
主對象名(視圖名或表名) |
isShowCheckBox |
【默認true】是否顯示復選框 |
isShowToolArea |
【默認true】是否顯示工具區(等同ToolArea.isHidden屬性) |
isEditor |
【默認false】是否啟用行內編輯 |
options |
Easyui的options參數(通過此參數,復蓋EasyUI的參數 |
$target |
JQ對象 |
defaultInsertData |
行內編輯時,添加數據的默認填充數據: 示例: dg.defaultInsertData = { objname: objName, align: 'center', width: 100, ordernum: 100, rowspan: 1, colspan: 1, mergeIndex: 1, datatype: 'string,50,0,0' }; |
3:方法:
名稱 |
參數 |
說明 |
addWhere |
(name, value, pattern, isOr) |
添加默認查詢條件: 示例: dg.addWhere("f1", "3", "like"); name:字段名 value:值 pattern:操作符 like、=、>、<、>=、<=、in、 <>、isnull 、likeor(這個為自定義條件) isOr:and、or likeor示例: dg.addWhere("隨意", "id>10 or id<10", "likeor");
|
removeWhere |
(name) |
根據字段名移除addWhere添加的條件 |
datagrid |
(key, value) |
統一treegrid和datagrid的EasyUI用法 示例: dg.datagrid("getChecked"); |
getChecked |
() |
【Array】獲得打勾選中的行 |
getCheckedId |
(key) |
【Array】獲得打勾選中的行ID。 key:若指定列名,則取指定的列。 |
getSelected |
() |
返回第一個被選擇的行記錄或null |
getData |
() |
返回已載入數據 |
reload |
() |
重載記錄,跟'load'方法一樣但是重載的是當前頁的記錄而非第一頁。 |
bind |
() |
綁定表格(之前都是設置參數,這個函數才開始組合參數並獲取表頭及數據請求) |
AR.DataGrid 的對象介紹:
對象的共性:
名稱 |
說明 |
isHidden |
是否隱藏 |
$target |
JQ對象 |
onBeforeExecute onExecute onAfterExecute |
執行前(參數可能各不相同) 執行(參數可能各不相同) 執行后(參數可能各不相同) |
1:PKColumn
屬性
名稱 |
類型 |
說明 |
Items |
Aries.Dictionary |
存檔每行的主鍵列信息,只能在數據呈現之后獲取,如onLoadSuccess事件 |
Editor |
{ BtnEdit, BtnDel, BtnSave, BtnCancel } |
內部有四個系統的可控制的按鈕。 其它通過add方法自定義添加的,只能通過Items獲取。 按鈕共性: isHidden:是否隱藏 $target:JQ對象。 相關事件: BtnEdit:onBeforeExecute = function (value, index) BtnDel:onBeforeExecute = function (value, index) BtnSave:onBeforeExecute = function (value, index, postData) BtnCancel:onBeforeExecute = function (value, index) |
方法
名稱 |
參數 |
說明 |
add |
key, title, clickname, url, winTitle, lv2action |
/** *如果設置clickname url&winTitle則無效 *@param{string} key 指向$Core.Common.js文件buttons_temp對象中的key值 *@param{string} title 鼠標划過顯示的文字 *@param{string} clickname 事件名 *@param{string} url 打開頁面的URL *@param{string} winTitle 打開窗口的標題 *@param{string} lv2action 二級權限名稱 */ |
2:Search 對象
屬性:
名稱 |
參數類型 |
說明 |
Items |
Aries.Dictionary |
存檔所有Input的對象數組,在調用bind()方法后才能獲取。 |
BtnQuery |
|
onBeforeExecute(searchJsonArray): 可以對SearchJsonArray進行修改
|
BtnReset |
|
清空值后,調用的BtnQuery進行查詢。 |
3:ToolBar 對象
屬性:
名稱 |
參數類型 |
說明 |
Items |
Aries.Dictionary |
存檔所有按鈕的對象數組,在調用bind()方法后才能獲取 |
BtnAdd |
|
function (index, isSameLevel) isSaveLevel:TreeGrid時添加下級還是同級 |
BtnDelBatch |
|
onBeforeExecute = function (ids, index) |
BtnImport |
|
onBeforeExecute = function (param) //導入之前執行事件,設置參數如:param.p1 = abc;param.p2 = 123 |
BtnExport |
|
onBeforeExecute = function (param) *@param{object} param 需要變更或者傳遞附加參數可對param進行修改 |
BtnExportTemplate |
|
onBeforeExecute = function (param) @param{object} param 需要變更或者傳遞附加參數可對param進行修改 |
方法:
名稱 |
參數類型 |
說明 |
add |
text, fname, index, css, lv2action |
/** *向工具條添加按鈕 *@param{string} text 按鈕顯示的文本 *@param{string} fname 按鈕注冊的事件函數名稱 *@param{int} index 按鈕的索引排序值從1開始,默認值最后 *@param{string} css 樣式名稱,默認值'btn-sm' *@param{string} lv2action 二級權限控制,默認值0 */ |
addHtml |
HTMLString, index, lv2action |
/** *向工具條添加自定義的HTML元素 *@param{string} HTMLString 一個字符串標簽 *@param{string} index 按鈕的索引排序值從1開始,默認值最后 *@param{int} lv2action 二級權限控制,默認值0 */ |
4:HeaderMenu、RowMenu 對象
屬性:
名稱 |
參數類型 |
說明 |
Items |
Array |
存檔右鍵菜單的內容 [{ "text": "名稱", "onclick": "JS事件", "lv2action": "權限" }, { "text": "名稱2", "onclick": "JS事件2", "lv2action": "權限2" } ] |
方法
名稱 |
參數類型 |
說明 |
add |
text, fname, lv2action |
/** *向工具條添加按鈕 *@param{string} text 按鈕顯示的文本 *@param{string} fname 按鈕注冊的事件函數名稱 *@param{string} lv2action 二級權限控制,默認值0 */ |