新版为JqGrid添加dwr支持

前面的为JqGrid添加dwr支持涉及到了修改jqgrid代码的问题,不方便进行升级。 javascript

现采用另一种方法。缺点是不能触发一些事件,如开始加载 ,加载完成,还有loading标志,对loadonce及其它一些支持不到。主要是dwrcallback方法没法访问到jqgrid内部的一些操做和属性的缘由。应该是能够获取的,只是暂时不知道。呵 java

后台dwr接口方法为:String [] properties, String condition,String sortField, String order, int curPage, int limit app

假调postData参数:[ [ "id", "name" ], "true" ], post

设置datatype参数为: this

function(postData) {
				JsonUtil.alertJson(postData);
				var formatedPostData = [];
				formatedPostData[formatedPostData.length] = postData[0];
				formatedPostData[formatedPostData.length] = postData[1];
				formatedPostData[formatedPostData.length] = postData.sidx;
				formatedPostData[formatedPostData.length] = postData.sord;
				formatedPostData[formatedPostData.length] = postData.page;
				formatedPostData[formatedPostData.length] = postData.rows;
				JsonUtil.alertJson(formatedPostData);
				var dwrargs = formatedPostData;

以上一段语句能够写在serializeGridData:里,postdata,先通过serializeGridData处理,而后转给datatype方法的postData。因此参数处理,能够写在另一个方法当中,
下面就调用UserService.dwrFunForJqGrid.apply()方法来调用javascript方法,注意dwr设置中的回调方法
    dwrsettings     =     {
					asyn    c : true,
					httpMethod : "POST",
					timeout : "3000",
					callback : function(data, st, xhr) {
						JsonUtil.alertJson(data);
						jQuery("#gridTable")[0].addJSONData(data);
					}
				};
				dwrargs[dwrargs.length] = dwrsettings;
				UserService.dwrFunForJqGrid.apply(this, dwrargs);
			},
 
相关文章
相关标签/搜索