获取jqGrid中选择的行的数据
如何获取jqGrid中选择的行的数据?
//下面是一起的,第一个函数用于jqgrid里面。第二个是单独的函数
//组合一起能使jgrid只能是单选,这四个一起
multiselect: true,
multiboxonly:true,
//多选框,multiselect: true,
multiselect: true, //这个是前面复选框显示的
loadComplete : topjqGridLoadComplete //这里是上下页箭头显示的
onSelectRow: function (rowId, status, e) {
var lastSel;
if (rowId == lastSel) {
$(this).jqGrid("resetSelection");
lastSel = undefined;
status = false;
} else {
lastSel = rowId;
}
},
function beforeSelectRow(rowId, e) {
$(this).jqGrid("resetSelection");
return true;
}
//重置 取消选中
$("#reset").click(function(){
$("#idx_table").jqGrid('resetSelection');
});
//清空表格内容
$("#add_indexTable").jqGrid('clearGridData');
取消所有选中的行:
$("jqgridtableid").trigger("reloadGrid");
//获取选择的行数,有多少选中这里的ids就是多少
var ids = $("#idx_table").jqGrid('getGridParam','selarrrow');
//遍历ids,获取每一行选中的内容,就是当前行对象,然后再用这个对象取相对应的值
var rowData = $("#idx_table").jqGrid('getRowData',rowid);
这里是针对一行的情况
// 获取选择的行id 这个是jqgrid的id-->channelTable
var rowId = $("#channelTable").jqGrid('getGridParam','selrow');
// 获取这一行的数据
var rowData = $("#channelTable").jqGrid('getRowData',rowId);
往div中添加内容
var option = $("<option value='"+grid.orgId+"'>" + grid.name + "</option>");
$("#divId").append(option);
$("#add_objectName").trigger("chosen:updated");
//清空div的内容
$("#add_gridName").empty();
//将json转成list对象
var list = $.parseJSON(json);
//判断字符串为空的方法
//js判断字符串是否为空,为空返回true
function isEmpty(str){
if (str === null || str === undefined || str === '' ) {
alert("规则不能为空");
return true;
}
}
//为id增加click事件
$("#id").click(function(){
});
//清空数组的方法
param.splice(0,param.length);
//前段分页很好的一种做法,看看就懂,这个pageDiv就是添加上一页,下一页用的
//当记录数大于9条时,才显示上下页,不然就单页显示,
if(records > 9){
var beforeBtn = $("<span>上一页</span>");
var nextBtn =$("<span>下一页<span>");
//当有多页,并且不是第一页时,可以点击上一页。否则不可以点击
if(page!=1){
beforeBtn.click(function(){
searchExamModel(--page,9,param,context);
})
beforeBtn.addClass("pageBtn");
}else{
beforeBtn.addClass("pageNoBtn");
}
//当有多页,并且不是最后一页时,可以点击下一页,否则不可以点击
if(page<total){
nextBtn.click(function(){
searchExamModel(++page,9,param,context);
})
nextBtn.addClass("pageBtn");
}else{
nextBtn.addClass("pageNoBtn");
}
$("#pageDiv").append(beforeBtn).append(nextBtn);
}
//获取所有复选框,这个是复选框事件。不错的例子
var obj= document.getElementsByName("checkName");
//循环所有选中的对象,添加到param中
for(var i = 0; i < obj.length; i++){
if(obj[i].checked){
//这里不是this(指的是#check对象),使用obj[i]才是当前对象
var a = $(obj[i]).val();
//把选中的元素添加到数组中
param.push(a);
}
}