在廣仲的一個項目中,有這樣一個需求,就是利用easyui框架為每一個行上的某一個格添加一個超鏈接,如下圖:
在案號那一列,每一行都是的這個案號都是一個超鏈接,平時我們都是通過field,綁定從后台獲取的數據,如果沒有什么特殊要求的話,就可以用了,但是要對數據的格式,還有屬性(比如添加一些超鏈接),這就要用到easyui里面自帶的一個formatter屬性,它的值是一個函數,函數里有三個參數,分別是value,row,index。下面來介紹一下這幾個參數:
1、value:是當前field綁定數據的值,比如,我當前這個field綁定的是一個名為id的屬性,那么這個value的就是當前行上的這個id的值
2、rowData:當前這一行上的所有數據,包括顯示的和未顯示的
3、index:當前是第幾行的行值
那這個函數怎么樣用呢?下面就我本次 的項目做個簡單的介紹:
function getMoreRecent(){ $('#filedGrid').datagrid({ title:"立案秘書收到的案子", url:"/arbcase/api/pageClickLog/recentCaseTopList", columns:[[ {field:'collectNo',title:'案號',width:100, formatter: function(value,row,index){ return '<a style="color:blue" href="/arbcase/case-'+row.id+'">'+row.collectNo+'</a>'; } }, {field:'nature',title:'案由',width:100}, {field:'accuserListText',title:'申請人',width:100}, {field:'appelleListText',title:'被申請人',width:100}, {field:'createdDatetimeText',title:'錄入時間',width:50} ]] }); }
上面代碼的特點就是就是,url是可以通過變量傳入的,第二列的行數也是可以自動設置的,同時可以對每一列的數據格式進行轉換,像我這個就是返回一個超鏈接,大概就是這樣了