本文实例讲述了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
相关文章:
c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】
已有域名能否直接搭建网站?
在线制作视频网站免费,都有哪些好的动漫网站?
天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
如何通过二级域名建站提升品牌影响力?
如何将凡科建站内容保存为本地文件?
教学网站制作软件,学习*后期制作的网站有哪些?
广州美橙建站如何快速搭建多端合一网站?
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
制作农业网站的软件,比较好的农业网站推荐一下?
无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?
制作网站的软件免费下载,免费制作app哪个平台好?
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
孙琪峥织梦建站教程如何优化数据库安全?
建站DNS解析失败?如何正确配置域名服务器?
建站主机无法访问?如何排查域名与服务器问题
佛山企业网站制作公司有哪些,沟通100网上服务官网?
如何用PHP快速搭建CMS系统?
,柠檬视频怎样兑换vip?
如何快速配置高效服务器建站软件?
免费视频制作网站,更新又快又好的免费电影网站?
深圳网站制作平台,深圳市做网站好的公司有哪些?
如何用西部建站助手快速创建专业网站?
制作表格网站有哪些,线上表格怎么弄?
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
建站之星Pro快速搭建教程:模板选择与功能配置指南
新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?
测试制作网站有哪些,测试性取向的权威测试或者网站?
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?
成都品牌网站制作公司,成都营业执照年报网上怎么办理?
宝塔面板创建网站无法访问?如何快速排查修复?
建站之星代理商如何保障技术支持与售后服务?
营销式网站制作方案,销售哪个网站招聘效果最好?
建站之星好吗?新手能否轻松上手建站?
我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?
大连 网站制作,大连天途有线官网?
如何批量查询域名的建站时间记录?
如何通过云梦建站系统实现SEO快速优化?
建站主机核心功能解析:服务器选择与网站搭建流程指南
宝盒自助建站智能生成技巧:SEO优化与关键词设置指南
建站主机选哪家性价比最高?
宝塔建站无法访问?如何排查配置与端口问题?
如何破解联通资金短缺导致的基站建设难题?
如何用已有域名快速搭建网站?
制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?
Swift中swift中的switch 语句
*请认真填写需求信息,我们会在24小时内与您取得联系。