- 浏览: 745209 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
梦行Monxin商城系统:
java网上商城与php网上商城比较 -
梦行Monxin商城系统:
java网上商城与php网上商城比较 -
任楚娴:
你好,请问html = nvl(html); 这句中的nvl( ...
java html串转换成文本串 -
u013246812:
,谢拉!
jQuery ui Dialog 讲解参数 -
大宝剑99:
...
前端优化
<html>
<head>
<title>JS内嵌表格</title>
<script type="text/javascript">
var gseq=1;
var gLastDetailImgObj=null;
//显示详细信息
function showDetailNumTable(){
var innerTR = "<table border=\"1\" align='center' width='100%'><tr style=\"background:gray;\"><td>inner11</td><td>inner12</td><td>inner13</td><td>inner14</td><td>inner15</td></tr><tr><td>inner21</td><td>inner22</td><td>inner23</td><td>inner24</td><td>inner25</td></tr><tr><td>inner31</td><td>inner32</td><td>inner33</td><td>inner34</td><td>inner35</td></tr><tr><td>inner41</td><td>inner42</td><td>inner43</td><td>inner44</td><td>inner45</td></tr></table>";
var imgObj=event.srcElement;
var tr=getOuterObj(imgObj,'TR'); // 得到tr对象
var newDivId=null;
if(!tr.newDivId){
var newTr=document.createElement("<TR></TR>"); // 创建tr
var newTd=document.createElement("td"); // 创建td
newTd.colspan=tr.children.length;
newDivId='detaildiv'+(gseq++); // 每一行内嵌的divID,每一行的ID都不同
var newDiv=document.createElement("<div id='"+newDivId+"'></div>"); // 创建div
newTr.appendChild(newTd); // tr中添加td
newTd.appendChild(document.createTextNode("各地区情况对比如下: "));
newDiv.innerHTML = innerTR; // 必须通过innerHTML方式添加内容,通过字符串拼进去的现实不出内容
newTd.appendChild(newDiv); // td中添加div
tr.parentNode.insertBefore(newTr,tr.nextSibling); // 必须通过tr的父节点才能用insertBefore,表示插入某个元素,这里表示在tr下个元素的前面(tr的后面)插入一行
tr.newDivId=newDivId; // 把新生成的div的ID赋给DIV
newTr.cells[0].colSpan= tr.children.length;
}
switchVisible(imgObj); // 控制展开还是合上内嵌表格
if(gLastDetailImgObj!=imgObj){
switchVisible(gLastDetailImgObj);
gLastDetailImgObj=imgObj;
}
else{
gLastDetailImgObj=null;
}
}
function switchVisible(imgObj){
if(!imgObj) return; // 如果imgObj对象为空,则返回
var tr=getOuterObj(imgObj,'TR');
var pvisible=('true'!=tr.currentVisibility);
tr.currentVisibility=(pvisible?'true':'false'); // pvisible为真时,tr.currentVisibility为true;pvisible为假时,tr.currentVisibility为false;
tr.nextSibling.style.display=(pvisible? '':'none'); // pvisible为真时,tr.nextSibling.style.display为'';pvisible为假时,tr.nextSibling.style.display为none;
}
//取得对象外围符合指定标签的第一个对象
function getOuterObj(obj,tagName){
while(obj!=null){
if(obj.tagName==tagName)
return obj;
obj=obj.parentNode;
}
return null;
}
</script>
</head>
<body>
<table border="1" align="center" width="80%">
<thead>
<tr style="background:GRAY;">
<th>姓名</th><th>年龄</th><th>电话</th><th>性别</th><th>住址</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td><td id = "no1"><a href="#" onclick="showDetailNumTable('no1');">11111111</a></td><td>1</td><td>1</td><td>1</td>
</tr>
<tr>
<td>2</td><td id = "no2"><a href="#" onclick="showDetailNumTable('no2');">22222222</a></td><td>2</td><td>2</td><td>2</td>
</tr>
<tr>
<td>3</td><td id = "no3"><a href="#" onclick="showDetailNumTable('no3');">33333333</a></td><td>3</td><td>3</td><td>3</td>
</tr>
<tr>
<td>4</td><td id = "no4"><a href="#" onclick="showDetailNumTable('no4');">44444444</a></td><td>4</td><td>4</td><td>4</td>
</tr>
</tbody>
</table>
</body>
</html>
<head>
<title>JS内嵌表格</title>
<script type="text/javascript">
var gseq=1;
var gLastDetailImgObj=null;
//显示详细信息
function showDetailNumTable(){
var innerTR = "<table border=\"1\" align='center' width='100%'><tr style=\"background:gray;\"><td>inner11</td><td>inner12</td><td>inner13</td><td>inner14</td><td>inner15</td></tr><tr><td>inner21</td><td>inner22</td><td>inner23</td><td>inner24</td><td>inner25</td></tr><tr><td>inner31</td><td>inner32</td><td>inner33</td><td>inner34</td><td>inner35</td></tr><tr><td>inner41</td><td>inner42</td><td>inner43</td><td>inner44</td><td>inner45</td></tr></table>";
var imgObj=event.srcElement;
var tr=getOuterObj(imgObj,'TR'); // 得到tr对象
var newDivId=null;
if(!tr.newDivId){
var newTr=document.createElement("<TR></TR>"); // 创建tr
var newTd=document.createElement("td"); // 创建td
newTd.colspan=tr.children.length;
newDivId='detaildiv'+(gseq++); // 每一行内嵌的divID,每一行的ID都不同
var newDiv=document.createElement("<div id='"+newDivId+"'></div>"); // 创建div
newTr.appendChild(newTd); // tr中添加td
newTd.appendChild(document.createTextNode("各地区情况对比如下: "));
newDiv.innerHTML = innerTR; // 必须通过innerHTML方式添加内容,通过字符串拼进去的现实不出内容
newTd.appendChild(newDiv); // td中添加div
tr.parentNode.insertBefore(newTr,tr.nextSibling); // 必须通过tr的父节点才能用insertBefore,表示插入某个元素,这里表示在tr下个元素的前面(tr的后面)插入一行
tr.newDivId=newDivId; // 把新生成的div的ID赋给DIV
newTr.cells[0].colSpan= tr.children.length;
}
switchVisible(imgObj); // 控制展开还是合上内嵌表格
if(gLastDetailImgObj!=imgObj){
switchVisible(gLastDetailImgObj);
gLastDetailImgObj=imgObj;
}
else{
gLastDetailImgObj=null;
}
}
function switchVisible(imgObj){
if(!imgObj) return; // 如果imgObj对象为空,则返回
var tr=getOuterObj(imgObj,'TR');
var pvisible=('true'!=tr.currentVisibility);
tr.currentVisibility=(pvisible?'true':'false'); // pvisible为真时,tr.currentVisibility为true;pvisible为假时,tr.currentVisibility为false;
tr.nextSibling.style.display=(pvisible? '':'none'); // pvisible为真时,tr.nextSibling.style.display为'';pvisible为假时,tr.nextSibling.style.display为none;
}
//取得对象外围符合指定标签的第一个对象
function getOuterObj(obj,tagName){
while(obj!=null){
if(obj.tagName==tagName)
return obj;
obj=obj.parentNode;
}
return null;
}
</script>
</head>
<body>
<table border="1" align="center" width="80%">
<thead>
<tr style="background:GRAY;">
<th>姓名</th><th>年龄</th><th>电话</th><th>性别</th><th>住址</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td><td id = "no1"><a href="#" onclick="showDetailNumTable('no1');">11111111</a></td><td>1</td><td>1</td><td>1</td>
</tr>
<tr>
<td>2</td><td id = "no2"><a href="#" onclick="showDetailNumTable('no2');">22222222</a></td><td>2</td><td>2</td><td>2</td>
</tr>
<tr>
<td>3</td><td id = "no3"><a href="#" onclick="showDetailNumTable('no3');">33333333</a></td><td>3</td><td>3</td><td>3</td>
</tr>
<tr>
<td>4</td><td id = "no4"><a href="#" onclick="showDetailNumTable('no4');">44444444</a></td><td>4</td><td>4</td><td>4</td>
</tr>
</tbody>
</table>
</body>
</html>
发表评论
-
全国最新行政区划代码(Tree)json数据以及地理数据
2020-11-11 21:23 374基于阿里提供的地理数据 http://datav.aliyun ... -
小知识点--解锁 AppChecker ping ip
2019-06-19 08:40 439在使用AppChecker 进行主动拨测的时候,目 ... -
记录年会小系统
2018-02-04 14:42 1142有点意思,年会过后,抽奖活动saas小系统扒光看看:支持P ... -
jdbc方式以 sys账号连接oracle数据的问题
2017-08-22 10:44 478多年以后,在操作oracle 时 发现 jdbc 连 ... -
proguard 代码混淆
2016-11-22 10:59 688url:http://proguard.sourceforg ... -
solr 表达式意义
2015-02-03 19:29 7701. “:”指定字段查指定值,如返回所有值*:* 2. “? ... -
solr 安装配置
2015-02-03 13:15 740solr 安装配置步骤: 1 首先下载solr(最新 ... -
javax.net.ssl.SSLKeyException: RSA premaster secre临时解决方案
2014-11-25 19:38 4411javax.net.ssl.SSLKeyException ... -
compass 小知识点
2014-09-15 10:22 932今天发现排序不管事, 查了一下:索引的问题:排序的列不进 ... -
java_opts 常用
2014-08-14 13:16 1212JVM设置,可以查考如下配置example:# Memory ... -
RPC Socket 服务调用模型
2014-04-09 16:14 596最近在看Dubbo 服务框架, 通过RPC 实现了输入和 ... -
JVM 基本参数
2014-04-03 11:49 782基本的JVM参数:-classpath, -cp: 设置类搜 ... -
eclipse 快捷键失效解决方法
2014-01-17 17:20 714有时候eclispe快捷键失效了,编码起来太难受了。 ... -
Compass+ lucene 通用代码(脱离数据库)
2013-11-08 15:09 919最近需要通过检索分类的方式进行处理,所以就写了接口与实 ... -
DEBUG远程tomcat
2013-08-21 13:35 991一、在windows系统中:打开%CATALINE_H ... -
自动获取网页内容,然后写入excel文档中
2013-07-05 15:22 3441今天需要将北京物业公司名称以及电话给整理出来,发现爱帮 ... -
继续学习jersey+spring 构建RESTful风格 webservice
2013-03-13 10:36 3455j先说一下springmvc rest风格 spring ... -
尽量少使用jaxb 进行xml与对象互换
2013-03-09 17:33 1345尽量少使用jaxb 进行xml与对象互换 问题不少,这个好 ... -
Cookie path的设置
2013-02-21 10:58 1945cookie path 设置 IE对如下的co ... -
http 相关知识点
2012-10-11 10:49 1049Host头域 Host头域指定请求资源的Intenet主机和 ...
相关推荐
在Vue.js中实现二级下拉表格的table组件是一项常见的需求,尤其在数据展示和交互复杂的Web应用中。Vue.js是一个轻量级的前端框架,它提供了丰富的指令、组件化和响应式数据绑定等功能,使得构建这样的组件变得相对...
在网页设计中,"table的表头固定"是一种常见的需求,尤其在展示大量数据时,保持表头在页面滚动时始终可见,可以帮助用户更好地理解数据列的含义。在这个场景下,我们通常会使用HTML的`<table>`元素来构建表格,并...
下拉刷新 上拉加载 上拉加载 底部点击加载 下拉刷新+上拉加载 下拉刷新+上拉加载 使用requirejs 下拉刷新+上拉加载 自定义dom 下拉刷新+上拉加载 固定头部 下拉刷新+上拉加载 tab一个实例 下拉刷新+上拉加载...
3. 创建表格:使用Ext.grid.Panel或Ext.view.Table创建表格视图,并将其与数据源关联。 4. 配置下拉组合框:使用Ext.form.field.ComboBox,配置其store为表格数据模型,指定显示字段和值字段,同时设置 tpl 或者 ...
本文将深入探讨标题“ios应用源码之支持下拉动态加载的table view 2018128”所涉及的关键知识点,以及如何实现一个支持下拉动态加载功能的Table View。 1. **Table View基本概念**: - Table View是iOS中的UI组件...
Bootstrap Table 是一个基于Bootstrap框架的开源前端组件,用于创建功能丰富的、响应式的表格。它提供了很多高级特性,如排序、过滤、分页、列切换等。在本话题中,我们聚焦于Bootstrap Table的一个扩展功能——可...
"下框组件下拉选择面板为多列Grid的实现"是一个高级的UI设计,它扩展了传统下拉框的功能,使得在有限的屏幕空间内展示更多信息成为可能。这个组件尤其适用于数据密集型应用,如表格数据管理或配置设置,它能帮助用户...
下面将详细介绍如何实现这样的功能。 首先,我们需要理解`QPushButton`是Qt提供的一种基本控件,用于创建带有文本或图标的按钮。`QWidget`是所有用户界面对象的基类,可以作为容器来承载其他控件,如菜单项。 要...
这个插件是用jQuery构建的,因此可以很好地与其他jQuery库和Bootstrap组件集成,简化了网页中的下拉菜单设计。 在HTML5中,`<select>`元素用于创建一个下拉列表,但原生的HTML5并没有提供多选和自定义样式的功能。...
通过以上 CSS 调整,我们可以有效地解决 Bootstrap Table 在末行显示下拉菜单时滚动条遮挡的问题,同时保持工具栏的正常显示。不过,需要注意的是,直接修改库的默认样式可能会导致其他地方的样式异常,因此建议将...
引用在table.js后面,把原来的下拉选择每页数量变为输入框输入
本资源"IOS应用源码——支持下拉动态加载的table view.zip"提供了一个实现了下拉动态加载功能的Table View控制器示例,这对于构建无限滚动或者分页加载的应用来说至关重要。下面将详细介绍这个示例中的关键知识点。 ...
本文将详细介绍如何使用JavaScript实现这一功能。 首先,理解这个需求的基本思路:创建一个独立的表头区域,当表格内容区域滚动时,这个表头区域的位置和样式需要实时调整以保持在屏幕顶部。这涉及到JavaScript的...
### 在PB中巧用下拉数据窗口:详细解析与实践应用 #### 一、引言 在PowerBuilder(简称PB)开发中,提高用户界面的友好性和数据录入的准确性是至关重要的。为了达到这一目的,PB提供了一种非常实用的功能——下拉...
使用javascript实现table动态增加删除行列。
Bootstrap Select是用于扩展Bootstrap原始下拉组件的插件,增加了筛选和自定义样式的功能。 首先,`bootstrap-select.css` 和 `bootstrap-select.min.css` 是Bootstrap Select的样式文件,包含了下拉框筛选的样式...
以下将详细介绍如何使用CSS创建导航栏和下拉菜单,并介绍提供的两个工具。 1. CSS导航栏: 导航栏是网站顶部或侧边的一系列链接,帮助用户快速访问网站的主要部分。通常,导航栏由多个导航项组成,每个导航项都...
在LayUI中,TableSelect是一个强大的组件,它结合了表格与下拉选择框的功能,提供了更丰富的交互体验。这个组件在JavaScript开发中特别适用于处理数据表中的选择操作,尤其是在需要对多选数据进行管理的场景下。 ...
本教程将深入探讨如何在2015年的iOS项目中实现TableView的上拉加载和下拉刷新功能,这对于任何iOS开发者来说都是必备技能,尤其适合初学者。 一、下拉刷新(Pull-to-Refresh) 下拉刷新是一种常见的用户界面设计,...
"IOS开发 Table上下拉动刷新(表头下拉,表尾上拉)"这个主题涉及到`UITableView`的扩展功能,即下拉刷新和上拉加载更多。这两种功能极大地提升了用户体验,让用户能够即时获取到最新的数据。 **下拉刷新(Pull-to-...