本文实例讲述了jQuery插件jqGrid动态获取列和列字段的方法。分享给大家供大家参考,具体如下:

1、问题背景
jqGrid表格插件,利用自身方法获取表格的表头和表格字段;获取列名和列字段名显示在弹窗里,用复选框进行勾选
2、实现源码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>jqGrid动态获取列和列字段</title>
<link rel="stylesheet" href="css/ui.jqgrid.css" rel="external nofollow" />
<link rel="stylesheet" href="css/ui.jqgrid-bootstrap-ui.css" rel="external nofollow" />
<link rel="stylesheet" href="css/bootstrap.css" rel="external nofollow" />
<link rel="stylesheet" href="css/bootstrap-theme.css" rel="external nofollow" />
<link rel="stylesheet" href="css/jquery-ui.css" rel="external nofollow" />
<link rel="stylesheet" href="css/jquery-ui.theme.css" rel="external nofollow" />
<script type="text/javascript" src="js/jquery-1.11.0.min.js" ></script>
<script type="text/javascript" src="js/jquery-ui.js"></script>
<script type="text/javascript" src="js/jquery.jqGrid.min.js" ></script>
<script type="text/javascript" src="plugins/grid.setcolumns.js"></script>
<style>
th{
border: 1px solid #ABABAB;
line-height: 20px;
vertical-align: middle;
}
td{
line-height: 20px;
}
</style>
<script>
$(document).ready(function(){
$("#jqTable").jqGrid({
url:"data/student.json",
height:380,
datatype:"json",
colNames:["序号","姓名","年龄","性别","QQ号","电话","地址"],
colModel:[{
name : 'id',
index : 'id',
label : '序号',
width : 60,
align:'center'
},{
name : 'name',
index : 'name',
label : '姓名',
width : 120,
align:'center'
},{
name : 'age',
index : 'age',
label : '年龄',
width : 120,
align:'center'
},{
name : 'sex',
index : 'sex',
label : '性别',
width : 120,
edittype : "select",
formatter : 'select',
editoptions : {
value :'0:男;1:女;'
},
align:'center'
},{
name : 'qq',
index : 'qq',
label : 'QQ号',
width : 120,
align:'center'
},{
name : 'phone',
index : 'phone',
label : '电话',
width : 120,
align:'center'
},{
name : 'address',
index : 'address',
label : '地址',
width : 200,
align:'center'
}],
sortname : "id",
sortorder : "desc",
viewrecords : true,
rownumbers:true,
autowidth:true,
jsonReader : {
repeatitems : false
}
});
var dialog = $("#dialog-column").dialog({
autoOpen :false,
modal : true,
resizable : true,
height: "auto",
width: 400,
align:'center',
buttons: {
"确定": function() {
$(this).dialog( "close" );
},
"关闭": function() {
$(this).dialog( "close" );
}
}
});
$("#column").button().on("click", function() {
dialog.dialog("open");
//获取列名
var colNames=$("#jqTable").jqGrid('getGridParam','colNames');
//获取列字段
var colModel=$("#jqTable").jqGrid('getGridParam','colModel');
var table = "";
var newColumnName = [];
var newColumnValue = [];
for (var i=0;i<colNames.length;i++)
{
var columnHidden = colModel[i].hidden;
var columnName = colModel[i].name;
if(columnHidden==false && columnName != "rn")
{
newColumnName.push(colNames[i]);
newColumnValue.push(columnName);
}
console.info(columnName);
}
for(var j=0;j<newColumnName.length;j++)
{
if(j%5==0)
{
table += "<tr>";
}
table += "<td><input type='checkbox' id='"+newColumnValue[j]+"' name='column' checked='checked'><label for='"+newColumnValue[j]+"'>"+newColumnName[j]+"</label></td>";
if((j+1)%5==0)
{
table += "</tr>";
}
}
$("#tableColumn").empty().append(table);
});
});
</script>
</head>
<body>
<div>
<table id="jqTable" class="table"></table>
</div>
<div>
<button id="column" type="button">显示</button>
</div>
<div id="dialog-column" title="设置列">
<table id="tableColumn" style="width: 100%; height: 100px;">
</table>
</div>
</body>
</html>
3、实现结果
(1)初始化
(2)单击按钮
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》、《jquery中Ajax用法总结》、《jQuery表格(table)操作技巧汇总》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
# jQuery
# 插件
# jqGrid
# 动态获取
# 列
# 列字段
# 基于jQuery和Bootstrap框架实现仿知乎前端动态列表效果
# jQuery动态显示和隐藏datagrid中的某一列的方法
# jQuery实现表格行和列的动态添加与删除方法【测试可用】
# jQuery EasyUI中DataGird动态生成列的方法
# 基于JQuery的动态删除Table表格的行和列的代码
# jQuery实现列表内容的动态载入特效
# jQuery实现动态显示select下拉列表数据的方法
# jQuery实现动态加载select下拉列表项功能示例
# jQuery动态产生select option下拉列表
# jQuery简单实现向列表动态添加新元素的方法示例
# jQuery实现动态生成年月日级联下拉列表示例
# Jquery动态列功能完整实例
# 相关内容
# 感兴趣
# 给大家
# 更多关于
# 所述
# 程序设计
# 单击
# 勾选
# 复选框
# 操作技巧
# 字段名
# 选择器
# 讲述了
# plugins
# grid
# min
# border
# px
# setcolumns
# style
相关文章:
建站168自助建站系统:快速模板定制与SEO优化指南
番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?
上海制作企业网站有哪些,上海有哪些网站可以让企业免费发布招聘信息?
建站之星会员如何解锁更多建站功能?
宝塔建站教程:一键部署配置流程与SEO优化实战指南
教学论文网站制作软件有哪些,写论文用什么软件
?
如何用花生壳三步快速搭建专属网站?
已有域名和空间如何快速搭建网站?
高性能网站服务器配置指南:安全稳定与高效建站核心方案
动图在线制作网站有哪些,滑动动图图集怎么做?
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
北京网站制作的公司有哪些,北京白云观官方网站?
建站之星如何保障用户数据免受黑客入侵?
外贸公司网站制作,外贸网站建设一般有哪些步骤?
大连网站设计制作招聘信息,大连投诉网站有哪些?
道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?
深圳网站制作平台,深圳市做网站好的公司有哪些?
网站制作公司,橙子建站是合法的吗?
网站设计制作公司地址,网站建设比较好的公司都有哪些?
开封网站制作公司,网络用语开封是什么意思?
制作网站的软件免费下载,免费制作app哪个平台好?
中山网站制作网页,中山新生登记系统登记流程?
网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?
如何有效防御Web建站篡改攻击?
如何在建站之星绑定自定义域名?
网站制作软件免费下载安装,有哪些免费下载的软件网站?
如何在IIS7上新建站点并设置安全权限?
历史网站制作软件,华为如何找回被删除的网站?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
高防服务器如何保障网站安全无虞?
网站网页制作专业公司,怎样制作自己的网页?
建站之星安装提示数据库无法连接如何解决?
建站之星ASP如何实现CMS高效搭建与安全管理?
公司门户网站制作流程,华为官网怎么做?
如何快速配置高效服务器建站软件?
设计网站制作公司有哪些,制作网页教程?
巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成
淘宝制作网站有哪些,淘宝网官网主页?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
如何在IIS7中新建站点?详细步骤解析
建站主机CVM配置优化、SEO策略与性能提升指南
如何在万网ECS上快速搭建专属网站?
网站代码制作软件有哪些,如何生成自己网站的代码?
在线制作视频的网站有哪些,电脑如何制作视频短片?
大连网站制作公司哪家好一点,大连买房网站哪个好?
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?
免费视频制作网站,更新又快又好的免费电影网站?
武清网站制作公司,天津武清个人营业执照注销查询系统网站?
网页设计网站制作软件,microsoft office哪个可以创建网页?
*请认真填写需求信息,我们会在24小时内与您取得联系。