jqGrid加載並獲取所有行數據,遍歷所有行數據


(1)jqgrid加載並獲取所有行數據

//獲取當前表格的所有數據
function getJQAllData() {
   var obj = jQuery("#jqGridId");
   //獲取當前顯示的數據
   var rows = obj.jqGrid('getRowData');
   var rowNum = obj.jqGrid('getGridParam', 'rowNum'); //獲取顯示配置記錄數量
   var total = obj.jqGrid('getGridParam', 'records'); //獲取查詢得到的總記錄數量
   //設置rowNum為總記錄數量並且刷新jqGrid,使所有記錄現出來調用getRowData方法才能獲取到所有數據
   obj.jqGrid('setGridParam', { rowNum: total }).trigger('reloadGrid');
   var rows = obj.jqGrid('getRowData');  //此時獲取表格所有匹配的
   obj.jqGrid('setGridParam', { rowNum: rowNum }).trigger('reloadGrid'); //還原原來顯示的記錄數量
   return rows;
}

 

(2)將所有表格數據傳到后台

getJQAllData(); jQuery("#submitForm").ajaxSubmit({ type : 'POST', url: saveUrl, dataType : 'json', data: { data :JSON.stringify(rows) //將json數組轉為String字符串 }, success: function(json){ alert(json.message); }, error: function(json) { alert("保存失敗!"); } });

后台獲取數據

String data = request.getParameter("data");
JSONArray object = JSONArray.fromObject(data);//將String轉json數組
List<ExpertList> lists=(List<ExpertList>)JSONArray.toList(object, ExpertList.class);//將json集合jArray放入list集合中

(3)通過rowId獲取行數據

//獲取grid表中所有的rowid值
var rowIds = obj.getDataIDs();
//初始化一個數組arrayData容器,用來存放rowData
var arrayData = new Array();
if (rowIds.length > 0) {
  for (var i = 0; i < rowIds.length; i++) {
  //rowData=obj.getRowData(rowid);//這里rowid=rowIds[i];
  arrayData.push(obj.getRowData(rowIds[i]));
  }
}

(4)遍歷所有行數據

// 遍歷所有行數據
$("#taskTable").find("tbody tr").not(".jqgfirstrow").each(function (j) {
     var inventoryQty = $(this).find("#taskid").val();
     if (inventoryQty == "") {
         alert("請先保存數據!");
         return false;
     }
});// 遍歷所有行數據
       

 

not(".jqgfirstrow")表示排除第一行表頭


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM