`

js动态生成table【转】

 
阅读更多

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>js操作表格</title>
<script language="javascript">
/*生成表格,采用appendChild*/
function init(){ 
     _table=document.getElementById("table");
_table.border="1px";
_table.width="800px";

   for(var i=1;i<10;i++){
   var row=document.createElement("tr"); 
   row.id=i;
   for(var j=1;j<6;j++){
    var cell=document.createElement("td"); 
    cell.id=i+"/"+j;
    cell.appendChild(document.createTextNode("第"+cell.id+"列")); 
    row.appendChild(cell); 
   }
   document.getElementById("newbody").appendChild(row); 
}


function rebulid(){
   var beginRow=document.getElementById("beginRow").value;/*开始行*/
var endRow=document.getElementById("endRow").value;/*结束行*/

var beginCol=document.getElementById("beginCol").value;/*开始列*/
var endCol=document.getElementById("endCol").value;/*结束列*/

    var tempCol=beginRow+"/"+beginCol;/*定位要改变属性的列*/
alert(tempCol);
var td=document.getElementById(tempCol);

/*删除要合并的单元格*/
for(var x=beginRow;x<=endRow;x++){
   for(var i=beginCol;i<=endCol;i++){
    if(x==beginRow){
     
    document.getElementById("table").rows[x].deleteCell(i+1);
   
    }
    else{
    
       document.getElementById("table").rows[x].deleteCell(i);
    
    }
   
   }
}
td.rowSpan=(endRow-beginRow)+1;
}
/*添加行,使用appendChild方法*/
function addRow(){
   var length=document.getElementById("table").rows.length;
   /*document.getElementById("newbody").insertRow(length);
   document.getElementById(length+1).setAttribute("id",length+2);*/
   var tr=document.createElement("tr");
   tr.id=length+1;
   var td=document.createElement("td");
   for(i=1;i<4;i++){
   td.id=tr.id+"/"+i;
td.appendChild(document.createTextNode("第"+td.id+"列"));
tr.appendChild(td);
   
   }
document.getElementById("newbody").appendChild(tr); 


function addRow_withInsert(){
   var row=document.getElementById("table").insertRow(document.getElementById("table").rows.length);
var rowCount=document.getElementById("table").rows.length;

var countCell=document.getElementById("table").rows.item(0).cells.length;
    for(var i=0;i<countCell;i++){
   var cell=row.insertCell(i);

   cell.innerHTML="新"+(rowCount)+"/"+(i+1)+"列";
   cell.id=(rowCount)+"/"+(i+1);
   
   }
}

/*删除行,采用deleteRow(row Index)*/
function removeRow(){
/* var row=document.getElementById("2"); 
   var index=row.rowIndex;
   alert(index);*/
   document.getElementById("newbody").deleteRow(document.getElementById(document.getElementById("table").rows.length).rowIndex);
}

/*添加列,采用insertCell(列位置)方法*/
function addCell(){
/*document.getElementById("table").rows.item(0).cells.length
用来获得表格的列数
*/
    for(var i=0;i<document.getElementById("table").rows.length;i++){
   var cell=document.getElementById("table").rows[i].insertCell(2);
   cell.innerHTML="第"+(i+1)+"/"+3+"列";
  
}
}
/*删除列,采用deleteCell(列位置)的方法*/
function removeCell(){
for(var i=0;i<document.getElementById("table").rows.length;i++){
   document.getElementById("table").rows[i].deleteCell(0);
}
}
</script>
</head>

<body onLoad="init();">

<table id="table" align="center"> 
     <tbody id="newbody"></tbody> 

</table> 
<div>
   <table width="800px" border="1px" align="center">
   <tr><td align="center"><input type="button" id="addRow" name="addRow" onClick="addRow();" value="添加行"/></td><td align="center"><input type="button" id="delRow" name="delRow" onClick="removeRow();" value="删除行"/></td></tr>
  <tr><td align="center"><input type="button" id="delCell" name="delCell" onClick="removeCell();" value="删除列"/></td><td align="center"><input type="button" id="addCell" name="addCell" onClick=" addCell();" value="添加列"/></td></tr>
 <tr><td align="center" colspan="2"><input type="button" id="addRows" name="addRows" onClick="addRow_withInsert();" value="添加行"/></td></tr>
</table>
</div>
<div>
   <table width="800px" border="1px" align="center">
   <tr><td>从第<input type="text" id="beginRow" name="beginRow" value=""/>行到<input type="text" name="endRow" id="endRow" value=""/>行</td><td rowspan="2" id="test"><input type="button" name="hebing" id="hebing" value="合并" onClick="rebulid();"/></td></tr>
  <tr><td>从第<input type="text" name="beginCol" id="beginCol" value=""/>列到<input type="text" name="endCol" id="endCol" value=""/>列</td></tr>
</table>
</div>
</body>
</html>

 

分享到:
评论

相关推荐

    js动态生成table

    在JavaScript中,动态生成table是一种常见的网页交互功能,它允许我们根据需求在页面上实时创建、添加或删除表格行(tr)和单元格(td)。这个功能在数据展示、表格编辑或者用户交互丰富的应用场景中非常实用。下面...

    javascript动态生成table及处理.

    ### JavaScript 动态生成 Table 及处理 在现代 Web 开发中,动态生成 HTML 元素是一种非常实用的技术,尤其当涉及到数据展示时,如表格(`&lt;table&gt;`)。通过 JavaScript 动态生成表格可以更加灵活地管理和更新数据。...

    javascript 动态生成table

    javascript动态生成固定样式的table

    js实现table分页可以动态生成table

    在JavaScript中实现表格(table)分页是一种常见的需求,特别是在数据量较大的网页应用中,为了提高用户体验和加载速度,我们通常会将数据分页展示。本文将深入探讨如何使用JavaScript来实现这一功能,并结合给定的...

    JQuery 动态生成DIV、Table并处理数据

    标题 "JQuery 动态生成DIV、Table并处理数据" 涉及的是使用JavaScript库JQuery来动态创建HTML元素,特别是DIV和Table,并且处理其中的数据。这在Web开发中非常常见,尤其是在构建交互式用户界面时。下面将详细阐述这...

    js 实现根据数组分组动态生成table(合并相同项)

    在JavaScript编程中,根据数组数据进行分组并动态生成表格是一项常见的需求,特别是在Web开发中。这个场景通常出现在数据展示、报表生成或者数据分析的应用中。本文将深入探讨如何使用JavaScript实现这一功能,尤其...

    JQ json动态生成table

    而JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也方便机器解析和生成。当我们需要从后台获取数据并动态地展示在前端表格(table)上时,jQuery和JSON的结合就显得尤为...

    使用AJAX动态生成table表格数据和jquery.pagination.js 的分页栏

    在本例中,我们的目标是动态生成一个table表格。首先,HTML中需要有一个表格结构,但初始时不包含任何数据。我们使用jQuery选择器获取这个表格,并在AJAX请求成功后,将服务器返回的数据插入到表格中。假设服务器...

    js 实现 动态生成包含合并单元格的表格

    js 实现 动态生成包含合并单元格的表格! 值得下载看看!资源免费,大家分享!!

    js动态创建Table

    JavaScript是一种强大的客户端脚本语言,广泛应用于网页交互和动态内容的生成。在Web开发中,动态创建Table是一种常见的需求,特别是在数据展示或者用户交互时。本文将深入探讨如何利用纯JavaScript实现动态表格,并...

    js动态生成表格

    在JavaScript(JS)中动态生成表格是一项常见的任务,特别是在网页交互和数据展示中。这篇文章将深入探讨如何利用JS实现这一功能,以及相关的源码和工具。 首先,我们要明白HTML表格的基本结构,它由`&lt;table&gt;`、`...

    jquery.table2excel.js 一键生成Excel表格

    jquery.table2excel.js 可一键生成Excel表格,需要jQuery.js支持 详细使用方法可见我的博客 https://blog.csdn.net/weixin_42571089/article/details/108799543

    JS实现动态修改table及合并单元格的方法示例

    在JavaScript中,动态修改表格(Table)以及合并单元格是常见的需求,特别是在处理数据展示或者报表生成时。以下将详细介绍如何使用JS实现这些功能。 首先,要动态修改表格,我们需要获取表格元素。在HTML中,表格...

    JQuery 动态生成Table表格实例代码

    本实例将详细讲解如何使用jQuery的`append`和`appendto`方法来动态生成Table表格。 首先,让我们了解`append`和`appendto`这两个jQuery方法。`append`方法用于在匹配元素的末尾添加新的内容,而`appendto`则是相反...

    读取json数据动态生成table

    在JavaScript(JS)开发中,动态地从JSON(JavaScript Object Notation)数据中读取信息并将其呈现到HTML表格(table)中是一项常见的任务。JSON因其简洁、易读且易于处理的特性,常用于存储和交换结构化数据。在这...

    JS 动态增加table

    在JavaScript中,动态增加table是一种常见的操作,尤其在网页交互和数据展示中。在这个场景中,我们看到的代码是用于JSP页面上的一个功能,它允许用户动态添加表格行(`&lt;tr&gt;`)到已有表格中。以下是相关知识点的详细...

    利用js合并table相同内容单元格并js方式自动生成

    利用js合并table相同内容单元格并js方式自动生成,把文本内容复制进js中,应该就知道大概咋用了

    js动态生成文本框并有删除功能

    ### JS动态生成文本框并实现删除功能的知识点 在现代Web开发中,动态地操作DOM(文档对象模型)是常见的需求之一。通过JavaScript可以轻松地实现这一目标。本篇文章将详细解析如何使用JavaScript来动态创建文本框,...

    jQuery实现动态给table赋值的方法示例

    这个技巧不仅适用于填充表格,还可以应用于其他需要动态生成或更新DOM内容的场景。结合jQuery的相关专题学习,如jQuery表格操作、JSON数据处理、表单操作等,可以进一步提升开发效率和代码质量。

    js动态创建table点击按钮dom table tr添加操作

    本主题主要聚焦于如何利用JavaScript动态创建一个包含表格(table)的DOM结构,并且在表格行(tr)中添加可点击的按钮。这通常用于展示数据集,允许用户进行交互操作,比如删除、编辑或查看详情。 首先,我们需要...

Global site tag (gtag.js) - Google Analytics