jqGrid中自定義格式,URL格式
當官方自帶的showlink用起來不是十分順手,因此可以考慮自己定義url格式
自定義格式其實很簡單,在formatter:處填寫函數名
比如formatter:makeURL
那麼,可以創建一個makeURL函數。
該函數的簽名必須遵循官方的約定,有3個參數。
function makeURL(cellvalue, options, rowObject ){
return urlstring;
}
cellvalue -就是要被格式化的值
options - 一個對象,包含的值是options : { rowId: rid, colModel: cm} rowId就是當前行的rowid,colModel就是jqgrid中定義的值
rowObject - 就是當前行的值。
各個值的賦值舉例如下:
如果:colModel: [
{ name: "filename", index: "filename", 550, sorttype: "string", sortable: true,formatter:makeURL},
{ name: "datetime", index: "datetime", 80, sorttype: "string", formatter: "string", sortable: true }
],
function makeURL(cellvalue, options, rowObject ){
alert(cellvalue);
alert(rowObject["test"]);//此處的值爲返回的json中對應的值。
alert(options["rowId"]);
alert(options["colModel"]["name"]);//此處返回的就是“filename”
}
有了這一招,返回一些自定義的URL就易如反掌,隨便加什麼參數都可以很容易的獲得,只需要能從rowObject["test"]之類的對象中取到數據即可。
還有一種更加簡單直白的方式,就是直接在返回的json中,把要顯示的字段直接用處理過的<A>這種格式處理。那樣的話,直接在表格裏顯示的就是已經可以直接使用的鏈接了。