datagrid是一個常用的表格控件,用于在網(wǎng)頁中展示表格數(shù)據(jù)。在前端開發(fā)過程中,經(jīng)常需要將datagrid中的數(shù)據(jù)轉(zhuǎn)換成json格式,以便于和后端進行數(shù)據(jù)交互。下面給出一個簡單的示例,介紹如何使用javascript將datagrid的數(shù)據(jù)轉(zhuǎn)為json格式。
//假設(shè)datagrid的id為"myDatagrid" var rows = $('#myDatagrid').datagrid('getRows');//獲取datagrid中的數(shù)據(jù)行 var result = [];//用于存儲轉(zhuǎn)換后的json數(shù)據(jù) for(var i=0;i<rows.length;i++){ var item = {};//用于存儲當(dāng)前一行的數(shù)據(jù) for(var field in rows[i]){ item[field] = rows[i][field];//將每一列的數(shù)據(jù)賦值給對應(yīng)的屬性 } result.push(item);//將當(dāng)前行的數(shù)據(jù)添加到結(jié)果數(shù)組中 } console.log(JSON.stringify(result));//將結(jié)果轉(zhuǎn)換為json并輸出到控制臺
上述代碼中,先通過$('#myDatagrid').datagrid('getRows')方法獲取datagrid中的所有數(shù)據(jù)行,然后使用兩層循環(huán)逐一將每一行的數(shù)據(jù)轉(zhuǎn)換為json格式,并添加到結(jié)果數(shù)組中。最后使用JSON.stringify方法將數(shù)組轉(zhuǎn)換為json格式的字符串,輸出到控制臺。
需要注意的是,在轉(zhuǎn)換過程中,需要注意每列數(shù)據(jù)的類型,例如日期類型需要轉(zhuǎn)換成對應(yīng)的格式字符串,否則會出現(xiàn)轉(zhuǎn)換后數(shù)據(jù)不完整或格式不正確的問題。