對於jqgrid列表數據的追加,數據量大時,渲染慢的方式處理

	function listselectCallback(id, action, index, layero, selectData){
	
			//或者這樣:
			for(var key in selectData){
				let data = [];
				var model = selectData[key];
				//判斷列表中是否已存在
				if(rowDataTest.findIndex(rowData=>{
					return rowData == key;
				})>-1){
					console.log('已存在')
				}else{
					data.push({
					'status': 0,
					'bean.id':model.id,
					'bean.code':model.code,
					'bean.type':model.type,
					'remarks':'測試數據'
					});
				}
			}
			yourGrid.jqGrid('addRowData', 'id', data);
			//這是關鍵點:一次性添加****************************************
			yourGrid.jqGrid('addRowData', 'id', data);
			//這是關鍵點:一次性添加****************************************
			//統一將列表數據,置成可編輯狀態
			for (let i = 0; i < ids.length; i++) {
				yourGrid.jqGrid("editRow", ids[i]);
			}
			
			
			//可以這樣:
			let keys = Object.keys(selectData);
			// 對於jqgrid列表數據的追加,數據量大時,渲染慢的方式處理
			let data = [];
			for (let i = 0; i < keys.length; i++) {
				data.push({
					'status': 0,
					'bean.id':selectData[keys[i]].id,
					'bean.code':selectData[keys[i]].code,
					'bean.type':selectData[keys[i]].type,
					'remarks':'測試數據'
				});
			}
			yourGrid.jqGrid('addRowData', 'id', data);
			let ids = yourGrid.dataGrid("getDataIDs");
			for (let i = 0; i < ids.length; i++) {
				yourGrid.jqGrid("editRow", ids[i]);
			}
			
			
	}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章