jqgrid实现行编辑功能

  参考资料:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:inline_editing

http://www.trirand.com/blog/jqgrid/jqgrid.html

很多坑坑,特别注意

1.jQuery("#filegridTable").jqGrid('saveRow', gr, function(data) {//注意此处的data竟然是XMLHttpRequest,如果要获取XHR中的响应值,必须使用responseText属性,和以前的callback的形参值完全不一样啊
						alert(JSON.parse(data.responseText).info);						
					}, "editFileNameServlet", {
						fileId: editFileId
					});
2.

var gr = jQuery("#filegridTable").jqGrid('getGridParam', 'selrow');//获取的是rowid,就是该条记录在表格中是第多少行,不是记录的主键
$("#gridTable").jqGrid("getRowData",rowid);//获取的是第rowid行的值,注意rowid是从1开始编码的
3.在编辑模式下,当其中的一个字段完成输入时,要求判断这个字段值不能为空,我找到了一个解决办法,不知道是不是最优的,没有查到其他人实现这个功能,就记一下,实现的方法是通过
editoptions选项,配置blur事件,具体参考<a target=_blank href="http://www.trirand.com/jqgridwiki/doku.php?id=wiki:common_rules">http://www.trirand.com/jqgridwiki/doku.php?id=wiki:common_rules</a> 

 {
							name: 'fileName',
							index: 'fileName',
							width: 400,
							align: 'left',
							title: false,
							sortable: false,
							editable: true,
							editoptions: {
								dataEvents: [{
									type: 'blur',
									fn: function(e) {
										alert(this.value);
										var fileName = this.value;
										if (fileName == undefined || fileName == null || fileName.trim().length < 1) //如果文件名为空,就不能进行提交
										{
											$().message("文件名不能为空!");
											jQuery("#filegridTable").jqGrid('restoreRow', edirRowid);
											jQuery("#file_edit_save_btn").attr("disabled", true);
											jQuery("#file_edit_btn").attr("disabled", false);
											return;
										}
										$("#file_edit_save_btn").click();
									}
								}]
							}

						}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值