
参考jqGrid的源代码,getRowData的实现方法是遍历tr获取td的innerhTML。 getRowData在单元格和行编辑模式下受到影响,在表单编辑模式没问题,因为表单没有直接修改jqGrid生成输入对象,而是在新的控件中生成编辑对象。 要想在单元格和行编辑模式下getRowData返回实际的数据行,而不是包含html代码的内容,可以参考下面的。
对于单元格编辑,需要先还原或者保存此单元格,然后再调用getRowData方法,实现如下
1、给grid添加beforeEditCell事件,声明2个window域的变量记录单元格的行号和列号 beforeEditCell:function(rowid,cellname,v,iRow,iCol){ lastrow = iRow; lastcell = iCol; } 2、在调用getRowData获取数据前,先保存/还原单元格 $("#grid")jqGrid("saveCell",lastrow,lastcell);//保存单元格,切换为文本模式 //或者===> //$("#grid")jqGrid("restoreCell",lastrow,lastcell);//还原单元格,切换为文本模式 var recs=$("#grid")jqGrid("getRowData"); 对于行编辑模式,原理一样,还原正在编辑的行或者保存数据到内存中 1,调用editRow时传递oneditfunc事件处理函数保存正在编辑的行的id $('#list4')jqGrid('editRow', rowid, true, function (rowid) { windowrowid=rowid; }); 2,在调用getRowData获取数据前,先保存/还原正在编辑的数据行 jQuery("#grid_id")saveRow(rowid, false, 'clientArray'); //==>或者还原 //jQuery("#grid_id")restoreRow(rowid); var recs=$("#grid")jqGrid("getRowData");
onSelectRow: function (rowid, status) {
function();
},
onSelectAll: function (aRowids, status) {
function();
},
试试这两个方法,第一个是选择单行,第二个是选择所有的,用过的人应该了解,加在jqGrid的属性里面使用,
rowid是选择的当前行的Id,
aRowids是所有行的id,
status是选中行的状态,是选中还是没选择,
希望对你有用。
jqGrid构建了一个列表,其中的几列为下拉框, 想实现当前选中行(例如选中其中一行)下拉框的二级联动,谁能给我点思路? 之前想用setCell来做,但是这个方法改变的是整列的值,而不是一个下拉框的值。回答1:帮顶啦回答2:看看FindControl能找到控件不回答3:引用2 楼 silentwins 的回复:看看FindControl能找到控件不 我不是太明白,能不能说的更详细点。回答4:我自己顶一下。回答5:请高手帮忙解答,感激涕零。回答6:过期不候啦。回答7:引用2 楼 silentwins 的回复:看看FindControl能找到控件不 这个肯定不行啦。。。一般是Requestparms[你列名]回答8:我已经解决了,通过onCellSelect()和afterCellSelect()两个事件解决的。回答10:求实列 代码拜求
以上就是关于- jqGrid单元格/行编辑模式下getRowData如何获取数据行全部的内容,包括:- jqGrid单元格/行编辑模式下getRowData如何获取数据行、怎么获取jqgrid的单元格点击事件、jqGrid单元格是下拉框,能实现选中行的二级联动吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)