`

JS动态创建表格,动态设置属性,动态添加事件 .

 
阅读更多
JS动态创建表格(新增、删除行和单元格),动态设置属性,动态添加事件




1、inserRow()和insertCell()函数

insertRow()函数可以带参数,形式如下:

insertRow(index):index从0开始

  这个函数将新行添加到index的那一行前,比如insertRow(0),是将新行添加到第一行之前。默认的insertRow()函数相当于 insertRow(-1),将新行添加到表的最后。一般我们在使用的时候都是:objTable.insertRow (objTable.rows.length).就是为表格objTable在最后新增一行。

  insertCell()和insertRow的用法相同,这里就不再说了。

2、deleteRow()和deleteCell()方法

  deleteRow()函数可以带参数,形式如下:

  

  deleteRow(index):index从0开始

        和上面两个方法差不多的意思,就是删除指定位置的行和单元格。要传入的参数:Index是行在表格中的位置,可以下面的方法取得然后去删除:

var row=document.getElementById("行的Id");

var index=row.rowIndex; //有这个属性,嘿嘿

objTable.deleteRow(index);

     在使用过程中我碰到的一个问题跟大家说一下,就是删除表格的行的时候,如果你删除了某一行,那么表格行数是马上就变化的,所以如果你要删除表格的所有行,下面的代码是错误的:

复制内容到剪贴板代码:

function clearRow(){

objTable= document.getElementById("myTable");

for( var i=1; i<objTable.rows.length ; i++ )

{

tblObj.deleteRow(i);

}

}  这段代码要删除原来的表格的表体,有两个问题。首先不能是deleteRow(i),应该是deleteRow(1)。因为在删除表格行的时候,表格的行数在变化,这就是问题的关键,rows.length总是在变小,删除的行数总是会比预想的要少一半,所以正确的删除表格的行的代码应该这样:

复制内容到剪贴板代码:

function clearRow(){

objTable= document.getElementById("myTable");

var length= objTable.rows.length ;

for( var i=1; i<length; i++ )

{

objTable.deleteRow(i);

}

}

3、动态设置单元格与行的属性

  A、采用setAttribute()方法

  格式如下:setAttribute(属性,属性值)

  说明:这个方法几乎所有的DOM对象都可以使用,第一个参数是属性的名称,比如说:border,第二个就是你要为border设置的值了,比如:

  var objMyTable = document.getElementById("myTable");

  objMyTable.setAttribute("border",1);//为表格设置边框为1

  其他的比如你要为一个TD设置高度,同样先取得这个TD对象,然后使用setAttribute()方法

  var objCell = document.getElementById("myCell");

  objCell.setAttribute("height",24);//为单元格设置高度为24

  在使用的时候遇到一个设置样式的问题,不能用setAttribute("class","inputbox2");而应该使用 setAttribute("className","inputbox2"),呵呵,其他我估计也有同样的问题,有些属性和我们在DW里面的不一致,呵呵,大家自己摸索吧。

  B、直接赋值

  var objMyTable = document.getElementById("myTable");

  objMyTable.border=1;//为表格设置边框为1

  这个方法也全部适用,呵呵。

      C、复合属性

      var objMyTable = document.getElementById("myTable");

      objMyTable.style.cursor = "pointer";

4、创建表格

  了解了行<tr>与单元格<td>的增删那就可以创建表格了。

  第一步:你需要有一个你去动态变化的表格,我这里讲的是已经存在页面的表格,我们要设置一个id:myTable

  var objMyTable = document.getElementById("myTable");

  第二步:创建行与列的对象

  var index = objMyTable.rows.length-1;

  var nextRow = objMyTable.insertRow(index);//要新增的行,我这里是从倒数第二行开始新增的

  //单元格箱号

  var newCellCartonNo = nextRow.insertCell();

  var cartonNoName = "IptCartonNo";

  newCellCartonNo.innerHTML = " <input type='text' size='5' name="+cartonNoName+" id="+cartonNoName+" value=''>";

  newCellCartonNo.setAttribute("className","tablerdd");

5、添加事件

    A、无参数的情况

    function   doalter(){  

        alert('hi');  

      }  

    var tr = Table.insertRow();

    tr.attachEvent("onclick",doalter);

    或

    tr.setAttribute("onclick","doalter()");

    或

    tr.onclick=function(){doalter();};

    或

    tr.onclick=doalter;

    B、传参数的方法

    var trMouseMove = function(obj)

    {

        return function()

        {

            obj.className='selected';

        }

    }

    var tr = Table.insertRow();

    tr.attachEvent("onmousemove",AddrSelfMouseMove(tr));


newcell = newRow.insertCell();
        			newcell.align = 'center';
        			newcell.innerHTML = '<span class="link-color">'+rowValue[0]+'</span>';
        			newcell.className = "text-left";
        			newcell.id = rowValue[1];
        			newcell.style.cursor = "pointer";
        			newcell.title = ""+rowValue[0]+"";
        			newcell.attachEvent("onclick",function(){modifyTvwallInfo(newcell);});



分享到:
评论
4 楼 perfect613 2012-09-22  
sinly 写道
perfect613 写道
你好,有个问题请教一下。动态添加行的时候如何给行绑定双击带参数事件?你的是不带参数的啊,谢谢了,急用

你获取到table给table添加双击事件就可以
table.onclick= dblclickIt;

非常感谢
3 楼 sinly 2012-09-17  
perfect613 写道
你好,有个问题请教一下。动态添加行的时候如何给行绑定双击带参数事件?你的是不带参数的啊,谢谢了,急用

你获取到table给table添加双击事件就可以
table.onclick= dblclickIt;
2 楼 sinly 2012-09-17  
等下,我发段代码给你参考
1 楼 perfect613 2012-09-17  
你好,有个问题请教一下。动态添加行的时候如何给行绑定双击带参数事件?你的是不带参数的啊,谢谢了,急用

相关推荐

    javascript动态创建表格

    JavaScript 动态创建表格知识点总结 JavaScript 动态创建表格是指使用 JavaScript 语言来动态地创建和修改 HTML 表格的行和单元格。这种技术非常有用,特别是在需要频繁地更新表格数据的情况下。 动态创建表格的两...

    javascript下动态创建表格的三种方式

    ### JavaScript 下动态创建表格的三种方式 在网页开发过程中,经常需要通过JavaScript来动态地创建或更新HTML元素,其中就包括表格(`&lt;table&gt;`)。本文将详细介绍在JavaScript中动态创建表格的三种常见方法,并对每...

    javascript动态创建表格.doc

    总结来说,JavaScript动态创建和操作表格的核心在于理解`insertRow()`、`insertCell()`、`deleteRow()`和`deleteCell()`方法的使用,以及如何灵活地设置表格和单元格的属性。在实际应用中,要注意浏览器兼容性问题,...

    jQuery动态创建表格生成器代码.zip

    《jQuery动态创建表格生成器代码详解》 在Web开发中,动态生成表格是常见的需求,尤其是在数据展示和交互性较强的应用场景中。jQuery作为一个轻量级的JavaScript库,以其简洁的API和强大的功能深受开发者喜爱。本文...

    JavaScript动态添加删除表格行

    这篇博客"JavaScript动态添加删除表格行"可能详细讲解了如何使用JavaScript实现这一功能。通过给定的标签"源码"和"工具",我们可以推测这篇文章会包含实际的代码示例和实用方法。 在HTML中,`&lt;table&gt;`元素用于创建...

    js动态条目添加

    当提到“js条目添加”时,我们通常是在讨论如何在网页上动态创建和插入新的HTML元素,比如列表项、表格行或者卡片视图。这通常涉及以下几个步骤: 1. **获取DOM元素**:首先,我们需要通过`document.getElementById...

    js动态生成表格

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

    动态创建表格.zip

    总结来说,这个"动态创建表格.zip"项目展示了如何使用JQuery和JavaScript来构建一个具有横向树形结构、分层显示和动态数据更新的表格。它涵盖了DOM操作、事件处理、数组操作、Ajax交互等多个核心概念,是学习和实践...

    javascript 动态创建表格:新增、删除行和单元格.zip

    - 最后,可以设置单元格的内容或添加其他属性。 压缩包中的"效果演示.html"文件很可能展示了这些方法的实际应用,而"javascript 动态创建表格:新增、删除行和单元格.txt"文件可能包含了代码示例和详细的解释。 ...

    js动态操作表格

    以上就是JavaScript动态操作表格的基本方法。实际应用中,可能还需要考虑到事件监听、异步数据加载等情况。通过熟练掌握这些技巧,你可以创建出交互性强、功能丰富的表格应用。记住,实践是检验理论的最好方式,尝试...

    javascript动态操作表格

    总的来说,JavaScript动态操作表格涉及创建、删除、选择和更新表格元素,这些都需要对DOM有深入理解。在实际应用中,还要考虑浏览器兼容性,特别是对于较旧的浏览器,如IE6和早期的Firefox版本。通过合理使用...

    javascript_动态创建表格

    ### JavaScript 动态创建表格详解 在Web开发中,经常需要使用JavaScript来动态地创建或修改HTML表格元素,以响应用户的交互操作或是展示变化的数据。本文将详细介绍如何使用JavaScript中的`appendChild()`, `...

    动态添加Table表格

    首先,我们需要了解动态创建表格的基本步骤: 1. **创建表格对象**:在C#代码中,使用`new`关键字创建一个`HtmlTable`对象,这是ASP.NET中用于表示HTML表格的类。 ```csharp HtmlTable table = new HtmlTable(); `...

    动态创建表格标签

    在IT领域,动态创建表格标签是一项常见的编程任务,特别是在网页开发和用户界面设计中。这一技术使得开发者能够根据需要在运行时自动生成表格元素,如`&lt;table&gt;`、`&lt;tr&gt;`(表格行)、`&lt;td&gt;`(表格数据单元格)以及与...

    js动态创建Table

    要动态创建表格,我们需要获取或创建`&lt;table&gt;`元素。例如,可以使用`document.createElement('table')`创建一个新的表格对象,然后设置其属性如`id`或`class`。 接下来,我们需要创建表格的行`&lt;tr&gt;`和列`&lt;td&gt;`. ...

    脚本动态创建复选框,添加事件

    在给定的代码示例中,我们看到了一个利用JavaScript动态创建复选框并为每个复选框添加事件处理程序的过程。这个过程涉及到了DOM操作、事件绑定以及字符串处理等关键知识点。 ### 一、动态创建DOM元素 在代码片段中...

    js的节点操作动态创建table表格,创建行,删除行.pdf

    JavaScript 动态创建 Table 表格和节点操作 根据提供的文件信息,我们可以总结出以下知识点: 1. 节点操作 在 HTML 文档中,所有内容都是节点,包括文档节点、元素节点、文本节点、属性节点和注释节点。节点操作...

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

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

    用jsf页面动态创建表格

    本文介绍了如何在JSF页面中使用JavaScript动态创建表格,并提供了详细的示例代码。通过这种方式,可以根据用户的操作实时更新表格内容,极大地提高了Web应用的灵活性和可用性。此外,还讨论了如何添加更复杂的表单...

Global site tag (gtag.js) - Google Analytics